#mysql #база_данных
В продолжение этого вопроса. Имеется примерно такая структура БД: Таблица Тест хранит в себе номер вопроса и три ответа к нему. Таблица Answer - правильный ответ к вопросу. Интересует, собственно, таблица Тест. Она не расширяема, как видите. Чтобы создать новый тест - нужно создавать новую таблицу, чтобы добавить ещё несколько вариантов ответа - нужно создавать новые столбцы. Как сделать правильно? Спасибо.
Ответы
Ответ 1
Вот хорошее расширяемое решение: [question] id text qtype [answer] id text isright question_id order [user_answer] id user_id question_id answer_id text Пример данных: [question] id text qtype 1 "Сколько лун на небе?" 1 2 "Столица Франции?" 1 [answer] id text isright question_id order 1 "Одна" 1 1 1 2 "Две" 0 1 2 3 "Три" 0 1 3 4 "Париж" 1 2 1 5 "Лондон" 0 2 2 6 "Нью-Йорк" 0 2 3 [user_answer] id user_id question_id answer_id text 1 1 1 1 "" 2 1 2 2 ""Ответ 2
QUESTION: idQ | TypeQ | TextQ TEST: id | idQ | Answer - привязываете сколько угодно ответов к вопросу ANSWER: id | idQ | TrueAnswer - правильные ответы привязываете к id вопроса
Комментариев нет:
Отправить комментарий