Проверьте мой дизайн таблиц базы данных для SQLite - PullRequest
0 голосов
/ 15 мая 2011

Я делаю викторину, и мне было интересно, если этот подход был в порядке?

trivia_table
    *movie_id
    name
    genre
question_table
    *movie_id
    *question_id
    question
    difficulty
answers_table
    *question_id
    A
    B
    C
    D
    Answer

Так что у каждого фильма будет своя таблица вопросов.

Я также подумал, что, может быть, я мог бы выбросить все свои вопросы в одну большую таблицу и, добавив количество вопросов, которые есть для каждого фильма, в question_table, а затем добавив pk movie_id также в answers_table?

1 Ответ

1 голос
/ 15 мая 2011

Вам следует объединить таблицы вопросов и ответов - у вас будет по одной строке ответа на каждый вопрос. Один вопрос не будет иметь несколько строк ответа. Один ответ не распространяется на несколько вопросов.

У вас не должно быть отдельных таблиц для каждого фильма (или отдельной таблицы для каждого фильма в новой редакции).

Если идентификатор вопроса уникален (для всех фильмов), вы можете сделать его основным ключом объединенной таблицы вопросов и ответов.

Ваш «trivia_table» лучше назвать «фильмы». Ваш объединенный стол вопросов и ответов можно назвать «пустяками». Нет никакого достоинства в суффиксе _table в имени таблицы.

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