Рекомендуем, 2024

Выбор редакции

Разница между сильной и слабой сущностью

Говоря о Сильной и Слабой сущности, мы должны знать, что означает сущность. Сущность - это уникальный объект в реальном мире. Это описывается как набор атрибутов. Коллекция сущностей одного типа вместе образует набор сущностей. Здесь мы обсудим два типа сущностей Сильная сущность и Слабая сущность. Слабая сущность всегда зависит от сильной сущности для ее существования. Давайте обсудим различия между сильной и слабой сущностями с помощью сравнительной таблицы, показанной ниже.

Сравнительная таблица

Основа для сравненияСильная сущностьСлабая сущность
основнойСильный объект имеет первичный ключ.Слабый объект имеет частичный ключ дискриминатора.
ЗависитСильный объект не зависит от любого другого объекта в схеме.Слабая сущность зависит от сильной сущности для ее существования.
ОбозначаетсяСильная сущность обозначается одним прямоугольником.Слабая сущность обозначается двойным прямоугольником.
СвязьОтношение между двумя сильными сущностями обозначается одним алмазом, просто называемым отношением.Отношения между слабой и сильной сущностью обозначены Идентификационными Отношениями, обозначенными двойным ромбом.
УчастиеСильный субъект может иметь или не иметь полного участия в отношениях.Слабая сущность всегда имеет полное участие в идентифицирующих отношениях, показанных двойной линией.

Определение сильной сущности

Сильная сущность - это та, чье существование не зависит от существования какой-либо другой сущности в схеме. Обозначается одним прямоугольником . Сильная сущность всегда имеет первичный ключ в наборе атрибутов, который описывает сильную сущность. Это указывает на то, что каждый объект в наборе сильных объектов может быть уникально идентифицирован.

Множество похожих типов сильных сущностей вместе образуют набор сильных сущностей . Сильная сущность поддерживает связь со слабой сущностью через Идентифицирующую связь, которая обозначена двойным ромбом на диаграмме ER. С другой стороны, отношения между двумя сильными сущностями обозначаются одним бриллиантом и просто называются отношениями .

Давайте разберемся с этой концепцией на примере; клиент берет кредит. Здесь у нас есть две сущности: первая - клиентская, а вторая - кредитная.

Принимая во внимание приведенную выше ER-диаграмму, для каждого займа должен быть хотя бы один заемщик, в противном случае этот займ не будет указан в наборе сущностей займов. Но даже если клиент не берет займа, он будет указан в наборе сущностей клиента. Таким образом, мы можем сделать вывод, что клиентская организация не зависит от кредитной организации.

Во-вторых, вы можете заметить, что сущность Customer имеет в качестве первичного ключа Cust_ID, который уникально идентифицирует каждую сущность в наборе сущностей Customer. Это делает юридическое лицо Клиента сильной организацией, от которой зависит кредитная организация.

Определение слабой сущности

Слабая сущность - это та, которая зависит от ее владельца, то есть сильной сущности для ее существования. Слабая сущность обозначается двойным прямоугольником . Слабый объект не имеет первичного ключа, вместо этого он имеет частичный ключ, который однозначно распознает слабые объекты. Первичный ключ слабого объекта - это составной ключ, сформированный из первичного ключа сильного объекта и частичного ключа слабого объекта .

Коллекция подобных слабых сущностей называется Weak Entity Set . Отношения между слабой сущностью и сильной сущностью всегда обозначаются Идентификационными Отношениями, т.е. двойным ромбом .

Для дальнейшей иллюстрации рассмотрим приведенный выше пример, на этот раз с точки зрения слабой сущности. У нас в качестве слабой организации есть Заем, и, как я сказал выше, для каждого займа должен быть хотя бы один заемщик. В наборе сущностей ссуды можно наблюдать, что ни один клиент не занимал ссуду на покупку автомобиля и, следовательно, он полностью исчез из набора ссуд. Для наличия автокредита в наборе ссудного лица он должен был быть заимствован клиентом. Таким образом, слабая Кредитная организация зависит от сильной Компании-Клиента.

Второе, что мы знаем - это слабая сущность, не имеющая первичного ключа. Таким образом, здесь Loan_name, частичный ключ слабого объекта и первичный ключ Cust_ID объекта клиента, создает первичный ключ объекта кредита.

В наборе сущностей Ссуды у нас есть две абсолютно одинаковые сущности, т.е. ипотечный кредит на дату 20/11/2015 на сумму 20000. Теперь, как определить, кто их одолжил, это можно сделать с помощью первичного ключа слабой сущности ( Loan_name + Cust_ID). Таким образом, будет установлено, что один ипотечный кредит заимствован клиентом 101 Jhon, а другой - клиентом 103 Ruby. Вот как составной первичный ключ слабого объекта идентифицирует каждый объект в наборе слабых объектов.

Ключевые различия между сильной и слабой сущностью

  1. Основное различие между сильной сущностью и слабой сущностью заключается в том, что у сильной сущности есть первичный ключ, тогда как у слабой сущности есть частичный ключ, который действует как дискриминатор между сущностями множества слабых сущностей.
  2. Слабая сущность всегда зависит от сильной сущности в своем существовании, тогда как сильная сущность не зависит от существования любой другой сущности.
  3. Сильная сущность обозначена одним прямоугольником, а слабая сущность обозначена двойным прямоугольником .
  4. Отношения между двумя сильными объектами обозначены одним бриллиантом, тогда как отношения между слабым и сильным субъектом обозначены двойным бриллиантом, называемым Идентификационные отношения .
  5. Сильный субъект может показывать или не показывать общее участие в своих отношениях, но слабый субъект всегда показывает полное участие в идентифицирующих отношениях, которые обозначены двойной линией.

Заключение:

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

Top