Как мне структурировать эту базу данных? - PullRequest
0 голосов
/ 02 декабря 2011

Я новичок, делающий действительно простое приложение в рельсах, но у меня нет опыта структурирования баз данных ... Можете ли вы сказать мне, есть ли преимущество в том или ином способе, представленном ниже, или есть лучший способ настроить его?

Студентам будет задано два вопроса в форме

  1. «Как вы думаете, на каких курсах студенты потерпят неудачу?» (Отметьте все подходящие варианты)

Математика, английский, французский, естествознание

  1. «Как вы думаете, какие курсы, вероятно, пройдут студенты?» (отметьте все подходящие варианты)

Математика, английский, французский, естествознание


Для базы данных я должен создать столбец "pass" и "fail" типа "string". Так что, например, для User1

«Pass» может иметь математику и английский, а

"Fail" может иметь науку

и по какой-то причине он не высказал свое мнение по-французски ..


или я должен сделать столбцы "Math", "French", "Science", "English" типа "string", а затем ввести в каждый столбец "pass" или "fail"

Как лучше организовать это?

1 Ответ

1 голос
/ 02 декабря 2011

Я бы, вероятно, создал 4 таблицы: User, Course, ExpectedResult и UserCourseExpectedResult, которые связывают первые 3 таблицы.

Это обеспечивает гибкость в будущем, если ожидаемые результаты включают дополнительные значения.

Структуры таблиц будут иметь вид

User
   UserId
   Name
   ...

Course
   CourseId
   Name
   ...

ExpectedResult
   ExpectedResultId
   Description

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