Какую структуру БД я должен использовать для формы с множеством флажков, которые каждый пользователь должен заполнить? - PullRequest
0 голосов
/ 08 июля 2011

Спасибо всем заранее за помощь кому-то новичку в веб-разработке.

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

Должен ли я структурировать это как отношение «многие ко многим» с таблицей условий и таблицей пересечений? Или это один пользователь для многих, так как каждый пользователь должен заполнить каждый раздел только один раз? Если бы он был последним, я мог бы создать только одну таблицу с userID и conditionName, но некоторые conditionName появлялись бы несколько раз

Если вы считаете, что это должно быть отношение многих ко многим, каков наилучший способ ввода не менее 100 состояний здоровья в таблицу состояний здоровья (conditionID, conditionName)?

1 Ответ

1 голос
/ 08 июля 2011

У вас есть правильная идея с идеей таблицы пересечений:

User Table
----------
userId (PK, AI)
...

Condition Table
----------
conditionId (PK, AI)
name
...

UserCondition
----------
userConditionId (PK, AI)
userId (FK)
conditionId (FK)

Таблица UserCondition имеет собственный автоинкрементный первичный ключ. Это позволяет при желании добавить одно и то же условие к одному и тому же пользователю несколько раз.

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