Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метода Климко 2006 (Мет пособие).doc
Скачиваний:
277
Добавлен:
15.06.2014
Размер:
1.12 Mб
Скачать
      1. Безусловные связи

Существует три фундаментальных вида связей:

  1. один к одному (1:1);

  2. один ко многим (1:М);

  3. многие ко многим (М:М).

Эти виды связей относятся к безусловным формам связи, так как для участия в связи требуется каждый экземпляр обеих сущностей.

Связь один-к-одному (1:1)существует, когда один экземпляр одной сущности связан с одним экземпляром другой сущности (Рисунок 4 .58). Например, муж женат на одной жене, жена замужем за одним мужем.

Рисунок 4.58 – Связь один-к-одному

Связь один-ко-многим (1:М)существует, когда один экземпляр некоторой сущности связан с одним или более экземпляром другой сущности, и каждый экземпляр второй сущности связан только с одним экземпляром первой сущности (Рисунок 4 .59).

Например, каждый владелец собаки владеет одной или несколькими собаками, каждая собака принадлежит только одному владельцу (см. Рисунок 4 .59).

Рисунок 4.59 – Связь один-ко-многим

Связь многие-ко-многим (М:М)существует, когда один экземпляр некоторого объекта связан с одним или более количеством экземпляров другого объекта, и каждый экземпляр второго объекта связан с одним или более экземплярами первого (Рисунок 4 .60).

На данном рисунке квартира может являться собственностью одного или нескольких владельцев. В то же время владелец квартиры может владеть несколькими квартирами.

Рисунок 4.60 – Связь многие-ко-многим

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

      1. Условные формы связи

В условной связимогут существовать экземпляры сущностей, которые не принимают участия в связи. Это обозначается буквой У в конце связи, которая не всегда является истинной (Рисунок 4 .61). На данном рисунке связьR2 условна только с одной стороны, так как не каждый служащий руководит подчиненными, но каждый подчиненный имеет руководящего служащего.

Рисунок 4.61 – Условные связи

Cвязь, условная с обеих сторон, называетсябиусловной. В этом случае могут существовать экземпляры обеих сущностей, которые не участвуют в связи. Биусловная связь обозначается буквой У с обеих сторон связи (см. связь R1 Рисунок 4 .61).

С учетом условных и безусловных связей существует десять отчетливых форм связей (Рисунок 4 .62).

Рисунок 4.62 – Десять форм связи

      1. Формализация связи

Цель связи– установить соотношение экземпляра одной сущности с экземпляром другой. Это достигается размещением вспомогательных атрибутов в соответствующих сущностях. Связь, определенная с помощью вспомогательных атрибутов, называется связью, формализованной в данных.

Для формализации связи один-к-одному вспомогательные атрибуты могут быть добавлены к любой сущности (но не к обеим). Вспомогательные атрибуты помечаются идентификатором связи в скобках ( вспомогательный атрибут Имя_мужа добавлен к сущности Жена; данный атрибут помечен идентификатором связи R5).

Рисунок 4.63 – Формализация связи один-к-одному посредством вспомогательного атрибута

Для формализации связи один-ко-многим вспомогательные атрибуты добавляются к сущности на стороне многих (Рисунок 4 .64), в противном случае нарушается третье правило атрибутов.

Рисунок 4.64 – Формализация связи один-ко-многим посредством вспомогательного атрибута

Для формализации связи многие-ко-многим создается ассоциативная сущность, содержащая ссылки на идентификаторы каждого из участвующих в связи экземпляров (Рисунок 4 .65). На данном рисунке создана ассоциативная сущность Владение, содержащая вспомогательные атрибуты, в качестве которых используются идентификаторы сущностей Квартира и Владелец_квартиры.

Рисунок 4.65 – Формализация связи многие-ко-многим посредством ассоциативной сущности

Существует два вида связей, формализованных в данных: идентифицирующая связь и неидентифицирующая связь.

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

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