Слабые сущности

Слабая сущность (weak entity) - это особый тип сущности, которая может существовать только если существует сущность какого-то другого типа. Сущность не являющаяся слабой называется сильной сущностью (strong entity). Если имеется две сущности и связь, то сущность способная существовать без связи с другой сущностью будет сильной. Та, что обязательно должна быть связана - слабой. На диаграммах слабые сущности могут быть изображены как прямоугольники со скругленными углами.

К особому типу слабых сущностей относятся идентификационно-зависимые сущности (ID-dependent entities). Это такие сущности, идентификатор которых содержит идентификатор другой сущности. Например, имеется две сущности: ДОМ и КВАРТИРА. У сущности ДОМ идентификатором является атрибут НазваниеДома, а у сущности КВАРТИРА композитным идентификатором являются атрибуты НазваниеДома сущности ДОМ и НомерКвартиры сущности КВАРТИРА. В данном примере, сущность КВАРТИРА будет идентификационно-зависимой.

В больших базах данных, где имеется множество сущностей, связанных друг с другом, может возникнуть неоднозначное толкование понятия слабой сущности. Некоторые разработчики ошибочно считают, что если какая-то сущность должна быть обязательно связана с другой отличного типа - то эта сущность слабая. Для того чтобы исключить путаницу, слабыми сущностями будут считаться те, которые логически зависят от сильных. Например - ТЕЛЕФОН при ведении списка телефонов для какого-либо человека. Нелогично предположить наличие телефона без наличия человека, которому этот телефон принадлежит. Слабые сущности идеально подходят для представления многозначных атрибутов о которых говорилось в разделе «Атрибуты».


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: