Представлять отношения - PullRequest
0 голосов
/ 26 марта 2019

В настоящее время я полностью остановился в размышлениях.

У меня есть таблица с именем Account, которая имеет атрибуты accountID (PK), firstName, lastName и т. Д., И я создал таблицу с именемКласс, который имеет атрибуты classID (PK), className, classTime и т. Д. Между двумя таблицами существует отношение многие ко многим.

Мне нужно разорвать отношение многие ко многим.Условия: после того, как учетная запись создана, она может быть зачислена в класс как студент или преподаватель, но не одновременно.Однако учетная запись может иметь роль инструктора в одном классе и роль студента в другом классе

Так что я подумал о создании таблицы с именем Enrollment, имеющей accountID, classID и тип регистрации, но янеопределенность в отношении отношений, необходимых между учетной записью и регистрацией и регистрацией и классом.Будет ли это один аккаунт для многих зачислений?

Если кто-то будет достаточно любезен, чтобы помочь мне понять это, я был бы очень благодарен.

1 Ответ

0 голосов
/ 26 марта 2019

Ваш дизайн кажется правильным.

В этой модели учетная запись имеет много регистраций;и регистрация имеет только один аккаунт.

В классе много учеников;Зачисление имеет ровно один класс.

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

...