ВУЗ:
Составители:
Рубрика:
100
Рис. 6.33. Пример рекурсивной связи
Другим видом рекурсии является сетевая рекурсия (network recursion),
когда руководитель может иметь множество подчиненных и, наоборот, под-
чиненный может иметь множество руководителей. Сетевая рекурсия задает
паутину отношений между экземплярами родительской и дочерней сущно-
стей. Это случай, когда сущность находится сама с собой в связи "многие-ко-
многим". Для разрешения связи "многие
-ко-многим" необходимо создать до-
полнительную сущность (подробнее связь "многие-ко-многим" рассматрива-
ется ниже).
Правила ссылочной целостности (referential integrity (RI)) – логические
конструкции, которые выражают бизнес – правила использования данных и
представляют собой правила вставки, замены и удаления. Определение пра-
вил ссылочной целостности осуществляется с помощью вкладки RI
Actions контекстного меню Relationships (
рис. 6.34). Заданные на
вкладке RI Actions опции логической модели используются при генера-
ции схемы базы данных для определения правил декларативной ссылочной
целостности, которые предписываются для каждой связи, и триггеров, обес-
печивающих ссылочную целостность.
На рис. 6.34 показан пример установленных по умолчанию правил ссы-
лочной целостности для неидентифицирующей связи между сущностями
Отдел и Менеджер
. На удаление экземпляра родительской сущности
(Parent Delete) устанавливается ограничение RESTRICT. Это означает,
что экземпляр родительской сущности нельзя удалить, если с ней связан эк-
земпляр дочерней. С экземпляром родительской сущности может быть не
связан ни один экземпляр дочерней сущности. Поэтому при вставке экземп-
ляра родительской сущности (Parent Insert) не проводится никакой
проверки (ограничение
NONE). При изменении ключевых атрибутов роди-
тельской сущности (Parent Update) нарушится связь с дочерними сущно-
стями, так как внешний ключ дочерних сущностей не равен ключу родитель-
ской сущности. Поэтому по умолчанию такое изменение запрещено (ограни-
чение RESTRICT). Отметим, что в данном случае можно применить ограни-
чение CASCADE, приводящее к изменению внешних
ключей дочерних сущ-
ностей при изменении ключа родительской сущности. При удалении экземп-
ляра дочерней сущности (Child Delete) ссылочная целостность не нару-
шается, поэтому по умолчанию применено ограничение NONE. Если при
Рис. 6.33. Пример рекурсивной связи Другим видом рекурсии является сетевая рекурсия (network recursion), когда руководитель может иметь множество подчиненных и, наоборот, под- чиненный может иметь множество руководителей. Сетевая рекурсия задает паутину отношений между экземплярами родительской и дочерней сущно- стей. Это случай, когда сущность находится сама с собой в связи "многие-ко- многим". Для разрешения связи "многие-ко-многим" необходимо создать до- полнительную сущность (подробнее связь "многие-ко-многим" рассматрива- ется ниже). Правила ссылочной целостности (referential integrity (RI)) – логические конструкции, которые выражают бизнес – правила использования данных и представляют собой правила вставки, замены и удаления. Определение пра- вил ссылочной целостности осуществляется с помощью вкладки RI Actions контекстного меню Relationships (рис. 6.34). Заданные на вкладке RI Actions опции логической модели используются при генера- ции схемы базы данных для определения правил декларативной ссылочной целостности, которые предписываются для каждой связи, и триггеров, обес- печивающих ссылочную целостность. На рис. 6.34 показан пример установленных по умолчанию правил ссы- лочной целостности для неидентифицирующей связи между сущностями Отдел и Менеджер. На удаление экземпляра родительской сущности (Parent Delete) устанавливается ограничение RESTRICT. Это означает, что экземпляр родительской сущности нельзя удалить, если с ней связан эк- земпляр дочерней. С экземпляром родительской сущности может быть не связан ни один экземпляр дочерней сущности. Поэтому при вставке экземп- ляра родительской сущности (Parent Insert) не проводится никакой проверки (ограничение NONE). При изменении ключевых атрибутов роди- тельской сущности (Parent Update) нарушится связь с дочерними сущно- стями, так как внешний ключ дочерних сущностей не равен ключу родитель- ской сущности. Поэтому по умолчанию такое изменение запрещено (ограни- чение RESTRICT). Отметим, что в данном случае можно применить ограни- чение CASCADE, приводящее к изменению внешних ключей дочерних сущ- ностей при изменении ключа родительской сущности. При удалении экземп- ляра дочерней сущности (Child Delete) ссылочная целостность не нару- шается, поэтому по умолчанию применено ограничение NONE. Если при 100
Страницы
- « первая
- ‹ предыдущая
- …
- 98
- 99
- 100
- 101
- 102
- …
- следующая ›
- последняя »