Хранение словарей в базе данных - PullRequest
0 голосов
/ 18 июня 2019

Я пытаюсь создать приложение CRUD, где на сайте есть пользователь и администратор. Где администраторы могут создать тест, который пользователи могут просматривать на своей стороне страницы. Администратор может выбрать создание викторины и может добавлять сколько угодно вопросов одним нажатием кнопки «Добавить новый вопрос». Когда они завершат создание теста, они выберут создание теста, и теперь оно будет отображаться на стороне пользователя. У меня вопрос, как мне хранить вопросы и ответы на вопросы в базе данных, так как администратор может задать столько вопросов, сколько они пожелают. Некоторые люди говорят мне, чтобы я сохранил его в качестве словаря в базе данных с номером вопроса в качестве ключа и названием вопроса и 4 различными ответами в качестве значений, как мне это сделать или есть какой-то другой лучший способ сделать это?

1 Ответ

0 голосов
/ 18 июня 2019

Вам нужно две таблицы. Один для вопроса и один для ответов:

tbl_question
id | description

tbl_answer
id | question_id | description | is_correct

Тогда сделай

SELECT q.*, a.description, a.is_correct
FROM tbl_question q
JOIN tbl_answer a ON a.question_id = q.id
WHERE q.id = :questionId

чтобы выбрать вопрос со всеми ответами.

При необходимости добавьте любую дополнительную информацию в таблицы

...