Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
dbbook(2010.04.15).pdf
Скачиваний:
51
Добавлен:
09.06.2015
Размер:
2.14 Mб
Скачать

5.10. Унификация атрибутов

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

Например, в случае, когда сотрудник может работать в организации, числясь не более чем в одном отделе, вначале получим ключевую диаграмму до унификации атрибутов (рис. 5.41).

Рис. 5.41.: Ключевая диаграмма до унификации атрибутов

Вверхней части диаграммы установлена связь один-ко-многим (1 : 0 : : : 1) между Организациями

иих Отделами. Отделы уникально идентифицируются своими кодами в пределах организации.

Влевой части диаграммы установлена связь один-ко-многим (1 : 0 : : : 1) между Организациями

иих Сотрудниками. Сотрудники уникально идентифицируются своими табельными номерами в пределах организации.

В правой части диаграммы установлена связь не-более-один-ко-многим (0 : : : 1 : 0 : : : 1) между Отделами и Сотрудниками организации (не все сотрудники организации числятся в отделах).

Таким образом, атрибут КодОрг попадает в класс Сотрудники дважды – один раз из класса Организации с маркером PF, и один раз из класса Отделы с маркером FK. При унификации атрибут КодОрг получает статус атрибута первичного/внешнего ключа PF, поглощающего статус атрибута внешнего ключа (рис. 5.42).

Рис. 5.42.: Ключевая диаграмма после унификации атрибутов

В заключение приведем фрагмент оператора создания базового отношения Сотрудники:

create table Сотрудники КодОтд null

primary key(КодОрг, № таб)

foreign key(КодОрг) references Организации(КодОрг) foreign key(КодОрг, КодОтд)

references Отделы(КодОрг, КодОтд)

5.11. Вопросы для самоконтроля

Уровни логической модели

Что понимается под классом сущностей и экземпляром класса сущностей?

Что понимается под наименованием и кратностью роли класса в связи, наименованием связи?

Укажите типичные кратности и их изображение.

Приведите наиболее важные типы связей.

Какому уровню представления информации о структуре данных соответствуют презентационные диаграммы?

Какому уровню представления информации о структуре данных соответствуют ключевые диаграммы?

Почему ключевые диаграммы основываются именно на первичных ключах?

Какому уровню представления информации о структуре данных соответствуют полные атрибутивные диаграммы?

Миграция ключей и виды связей

Что понимается под миграцией ключей? Какие классы называются родительскими и дочерними?

Укажите нотацию для маркеров атрибутов.

Изобразите схемы миграции первичного ключа.

Какая связь называется идентифицирующей? Полностью и неполностью идентифицирующей?

Какая связь называется неидентифицирующей? Обязательной и необязательной неидентифицирующей?

Какие кратности (проектируемые или спроектированные) устанавливаются на концах связей на диаграммах различных уровней?

Что указывается в секции ограничений при изображении классов сущностей?

Какие типы связей устанавливаются в зависимости от видов связей и почему?

Какие виды связей являются необязательными на родительском конце связи?

Какие виды связей являются необязательными на дочернем конце связи?

Классификация кластеров

Как можно подойти к выделению кластеров сущностей? Укажите основания классификации. Иерархическая рекурсия

Какая рекурсивная связь называется иерархической?

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

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

Какие соображения лежат в основе реализации иерархической рекурсии?

Может ли схема иерархической рекурсии описывать не одну иерархию, а несколько однотипных иерархий (то есть не дерево, а лес)?

Как в схеме иерархической рекурсии моделируется взвешенное дерево?

Как описать более сложную иерархию, например, с двумя предками для описания отношений отец-дитя, мать-дитя?

Сетевая рекурсия

Какая рекурсивная связь называется сетевой?

Когда класс ассоциативных сущностей называется именующим?

Постройте абстрактную презентационную диаграмму, реализующую сетевую рекурсию в реляционной модели.

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

Ориентированный или неориентированный граф описывает абстрактная ключевая диаграмма?

Какие соображения лежат в основе реализации сетевой рекурсии?

В чем заключается сетевая реализация иерархической рекурсии?

Как можно описать взвешенный граф?

Как можно описать взвешенный мультиграф? Ассоциация

Какой кластер сущностей называется ассоциацией?

Когда класс ассоциативных сущностей называется именующим?

Какая ассоциация называется n-арной?

Постройте абстрактную презентационную диаграмму, детализирующую связь многие-ко-многим (0 : : : 1 : 0 : : : 1) в реляционной модели.

Постройте абстрактную ключевую диаграмму, детализирующую связь многие-ко-многим (0 : : : 1 : 0 : : : 1) в реляционной модели.

Какой граф описывает абстрактная ключевая диаграмма, детализирующая связь многие-ко- многим (0 : : : 1 : 0 : : : 1)?

Какие соображения лежат в основе реализации связи многие-ко-многим (0 : : : 1 : 0 : : : 1)?

Поясните принцип «индивидуализации» ребер на примере графика приема пациентов. Обобщение

Какой кластер сущностей называется обобщением?

Как называется переход от обобщенной сущности к категориальным?

Что понимается под полными и неполными иерархиями категорий?

Как на презентационных диаграммах связь «обобщение-категория» изображается в нотации UML?

Постройте абстрактную презентационную диаграмму, реализующую обобщение в реляционной модели.

Постройте абстрактную ключевую диаграмму, реализующую обобщение в реляционной модели.

Полную или неполную иерархию категорий описывает абстрактная ключевая диаграмма? Композиция

Какой кластер сущностей называется композицией?

Какие виды связей устанавливаются между компонентами и композитом?

Почему полностью идентифицирующие связи используются не только при обобщении, но и при композиции?

В чем проявляются различия образования композиции с помощью установления неполностью идентифицирующих и обязательных неидентифицирующих связей?

Как на презентационных диаграммах связь «композит-компонент» изображается в нотации UML?

Постройте абстрактную презентационную диаграмму, реализующую композицию в реляционной модели.

Постройте абстрактную ключевую диаграмму, реализующую композицию в реляционной модели.

Агрегация

Какой кластер сущностей называется агрегацией?

Какой вид связи устанавливается между компонентами и агрегатом?

В каком случае компонент существует вне агрегата?

Как на презентационных диаграммах связь «агрегат-компонент» изображается в нотации UML?

Постройте абстрактную презентационную диаграмму, реализующую агрегацию в реляционной модели.

Постройте абстрактную ключевую диаграмму, реализующую агрегацию в реляционной модели. Унификация атрибутов

Что понимается под унификацией атрибутов? Приведите пример.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]