Хранение в базе данных SQLite - PullRequest
       1

Хранение в базе данных SQLite

2 голосов
/ 11 августа 2011

Я создаю обзор приложения для Android.

На данный момент я планирую создать ~ 900 таблиц, каждая из которых представляет профессора. Каждая запись в таблице будет иметь поле для комментариев пользователя к преподавателю. Каждый раз, когда пользователь добавляет комментарий, под этим профессором добавляется новая запись

Это логичный способ сделать это? Я чувствую, что может быть больше эффективный способ сделать это. Кроме того, будет иметь слишком 900 столов много для MySQLite?

Я также думал о том, чтобы иметь 1 таблицу, которая будет содержать всех профессоров и иметь комментарии пользователей в качестве поля. Затем, когда добавляется каждый новый комментарий, я как-то добавляю 1 дополнительное поле. Я не думаю, что это использует базы данных должным образом, но возможно ли это (на +1 количество полей)

Ответы [ 3 ]

7 голосов
/ 12 августа 2011

Вам не нужно 900 таблиц, вам, скорее всего, нужна одна таблица Учителя с 900 записями. Возможно, вы захотите ознакомиться с некоторыми принципами проектирования баз данных и реляционной моделью . Наиболее полезной частью ссылок могут быть примеры в реляционной модели.

0 голосов
/ 12 августа 2011

Не вдаваясь в подробности, вам понадобится как минимум одна таблица для всех профессоров, одна таблица для всех пользователей и одна таблица для комментариев.

create table tbl_professor (id integer primary key, name text, ...)
create table tbl_user (id integer primary key, name text, ...)
create table tbl_comment (user_id integer, professor_id integer, thecomment text, ...)
0 голосов
/ 12 августа 2011

Я бы порекомендовал вам прочитать несколько статей по основам проектирования баз данных.

Вот довольно хороший пример, который поможет вам начать на правильном пути:

Основы проектирования реляционных баз данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...