Разве не может быть "неидентифицирующих" отношений N:M?
Моя база данных ERM (Entity Relationship Model) имеет TEACHER
тип объекта, который связан с SUBJECT_MODULE
тип сущности (так как разные модули по каждому предмету преподаются разными учителями, а для некоторых модулей даже разные главы в каждом модуле могут преподаваться разными учителями) TEACH
тип отношений.
Это N:M
отношения, так как каждый учитель может преподавать многочисленные предметные модули, и каждый модуль может преподавать несколько учителей.
Но, по моему мнению, не идентифицирующие отношения, потому что предметный модуль не зависит от учителя, который будет однозначно идентифицирован; Пожалуйста, скажите, если вы не согласны с этим.
Но из этого руководства (хотя в нем просто говорится: "Идентификационные отношения обычно используются для таблиц соединения, созданных из отношения многие ко многим".) И выяснение того, что инструмент моделирования ERD в MySQL Workbench содержит только один инструмент для моделирования. отношения M:N, для чего identifying N:M relationship
", по крайней мере, подсказка говорит так... Интересно, всегда ли отношения N:M являются или не всегда идентифицирующими. Пожалуйста, объясните мне это. Спасибо.
1 ответ
Интересно, всегда ли отношения N:M являются или не всегда идентифицирующими.
Само отношение M:N никогда не является "идентифицирующим" (или "неидентифицирующим" в этом отношении), но может состоять из идентифицирующего или неидентифицирующего отношения 1:N.
Речь идет не об идентификации каких-либо конечных точек (учитель и предметный модуль), а об идентификации связи между ними. В этом случае выглядит, что комбинация ключей, перенесенных из таблиц конечных точек, идентифицирует соединение (будучи частью ключа соединения):
Таким образом, хотя отношение M:N само по себе не является "идентифицирующим", отношения 1:N, из которых оно состоит, являются.
(Пользовательский интерфейс инструмента, который вы цитировали, вероятно, использует термин "идентификация M:N" просто как сокращение для вышеупомянутого.)
При этом вы могли бы оставить соединение без ключа поверх этих перенесенных ключей:
Технически это все равно будет M:N, но теперь разрешит дублированные соединения (т.е. один и тот же учитель будет подключен к одному и тому же предметному модулю более одного раза), и в этом случае вышеприведенные отношения 1:N больше не будут "идентифицирующими".