ERD - Диаграмма отношений сущностей - сложные и хитрые отношения - PullRequest
1 голос
/ 23 сентября 2011

Вот сценарий.

Две совершенно разные сущности независимо связаны с третьей сущностью одинаково.Как мы представляем это в ERD?или (Enhanced ER)

Например:

  • КНИГА «ЗАИМЧИК» для ученика (из библиотеки) * КНИГА «ЗАВОД» ОТДЕЛА (из той же библиотеки).

Если я определю отношение «ЗАИМ» дважды, это будет неуклюжим и неуклюжим с точки зрения появления на диаграмме, а также увеличит сложность реализации.

В то же времявремя, я не могу объявить троичные отношения, так как СТУДЕНТ и ОТДЕЛ не связаны между собой в экземпляре отношений.

Однако я не мог найти лучший путь.

Как мне это решить?

Ответы [ 2 ]

1 голос
/ 23 сентября 2011

Если верить Википедии, Enhanced ER разрешает наследование.Почему у вас нет сущности ЗАИМЧИК (с соответствующими отношениями), и у вас нет подкласса СТУДЕНТ и ОТДЕЛ?

0 голосов
/ 22 ноября 2011

У меня была похожая проблема - когда компания или человек могут заказать продукт.

У вас есть order, который может принадлежать либо person, либоcompany - так с чем вы связываете отношения?Я думаю, что у заказов будет внешний ключ companyId и personId, но как сделать их эксклюзивными?Возвращаемые данные не обязательно будут одинаковыми - например, company не имеет поля first name / last name.

Я думаю, это можно сделать, вернув nameи в случае person создайте строку из firstname / lastname, а в случае company используйте поле companyname.

...