SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 31.01.2015 23:10:19

fenuk
Участник
Зарегистрирован: 30.07.2010
Сообщений: 19

Не получается целиком продумать структуру БД

Задание: разработать систему тестирования знаний.

Краткое описание:

Зарегистрированный пользователь на сайте имеет возможность пройти тест и просмотреть свои результаты.

Начал с прототипирования таблиц БД:

1. Таблица Пользователь;
id, имя пользователя.

2. Таблица Вопрос:
содержит в себе поле text, которое будет содержать текст вопроса, типа: "Сколько будет 2+2?" и id;

3. Таблица ВариантОтветаНаВопрос:
каждый Вопрос содержит ВариантыОтветов, отношение 1 ко многим c таблицей Вопрос.

4. Таблица Экзамен:
хранит информацию о текущем\законченном экзамене,
так как Пользователь может делать неогранниченное количество попыток пройти Экзамен, а Экзамен может проходить только 1 конкретный Пользователь, то отношение один ко многим с табл Пользователь.
Один Экзамен содержит набор вопросов, один Вопрос может встречаться в нескольких разных экзаменах: многие ко многим с табл. Вопрос.

И вот теперь у меня начинаются трудности:

а как хранить результаты ответов Пользователя? вводить какую то дополнительную сущность?
или связывать по принципу многие ко многим табл Экзамен и табл ВариантОтветаНаВопрос?

ведь в конце экзамена, надо будет еще произвести обработку ответов пользователя, указать на какие Вопросы получены неправильные ответы и какие варианты правильные.

Подскажите.

Отредактированно fenuk (31.01.2015 23:13:15)


Прикрепленные файлы:
Attachment Icon mysql-ru.png, Размер: 74,712 байт, Скачано: 522

Неактивен

 

#2 31.01.2015 23:16:32

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Не получается целиком продумать структуру БД

Ответы пользователя проще хранить в отдельной сущности  - она будет ссылаться на таблицу пользователей, таблицу вопросов. Какие ответы правильные - это можно хранить прямо в таблице вопросов.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#3 31.01.2015 23:25:30

fenuk
Участник
Зарегистрирован: 30.07.2010
Сообщений: 19

Re: Не получается целиком продумать структуру БД

deadka написал:

Ответы пользователя проще хранить в отдельной сущности  - она будет ссылаться на таблицу пользователей, таблицу вопросов. Какие ответы правильные - это можно хранить прямо в таблице вопросов.

У одного Вопроса всегда несколько ВариантовОтвета, и все варианты ответов, хранятся в таблице ВариантОтветаНаВопрос. У каждого ВариантОтветаНаВопрос есть поле isCorrect, которое принимает значение 1 - если этот вариант правильный, и 0 - если неправильный.

ну я вот тоже думаю добавить сущность типа ОтветПользователя.
ОтветПользователя будет ссылаться на таблицу Пользователь и на табл ВариантОтветаНаВопрос.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson