Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория БД (текст).doc
Скачиваний:
23
Добавлен:
14.04.2015
Размер:
1.1 Mб
Скачать

11. Тернарные связи.

Мы уже определили степень типа связи как число участвующих типов объектов в связи и ввели названия бинарных и тернарных связей. Пример ER-диаграммы тернарной связи СНАБЖАЕТ представлен на рис.12. Вообще, тип связи R степени n имеет n линий, связывающих R с каждым из типов объектов.

В

Рис.13 Пример замены тернарной связи тремя бинарными

Рис.14 Пример тернарной связи со слабым типом объекта

общем случае тернарная связь содержит больше информации, чем три бинарных. Например, рассмотрим три бинарные связи:МОЖЕТ_СНАБЖАТЬ между СНАБЖЕНЕЦ (обозначим S) и ДЕТАЛЬ (P), ИСПОЛЬЗУЕТ между ПРОЕКТ (J) и ДЕТАЛЬ и СНАБЖАЕТ между СНАБЖЕНЕЦ и ПРОЕКТ (обозначим их, соответственно, SP=(s,p), JP=(j,p) и SJ=(s,j)). В каждом из трех случаев предполагается, что третий объект может принимать любое из допустимых значений. Таким образом, можем взять три декартовых произведения [SPJ], [JPS] и [SJP], после чего рассмотреть их объединение, так как их схемы совпадают. Очевидно, что в общем случае количество элементов в полученном объединении не меньше исходной тернарной связи и, следовательно, тернарная связь содержит больше информации.

Заметим, что возможно участие слабого типа объекта с тернарным отождествляющим типом связи. В этом случае слабый тип объекта может иметь несколько собственников (рис.14). Аналогично, (min,max) кардинальные пропорции применимы к n-арным связям.

ВОПРОСЫ ДЛЯ КОНТРОЛЯ ПО РАЗДЕЛУ I.

1. В чем принципиальное отличие между уровнями моделирования?

2. Раскрыть назначение концептуального проектирования в процессе моделирования.

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

4. Что такое константа NUL и когда она используется?

5. В чем различие между объектом и типом объекта?

6. В чем различие между атрибутом и множеством значений?

7. В чем различие между типом связи и состоянием связи?

8. Что такое роль участия? Когда необходимо именовать роли?

9. Что такое структурные ограничения?

10. Какие способы записи структурных ограничений Вы знаете?

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

12. Что такое рекурсивный тип связи? Приведите пример.

13. Что такое ER-диаграмма? Приведите основные обозначения.

II. Развитие понятий моделирования данных

0. Введение

Раньше были рассмотрены понятия модели данных "Сущность-Связь", которая часто используется на ранних стадиях проектирования баз данных. На этой стадии, называемой концептуальное проектирование, требования к данным базы данных четко определяются в терминах ER-схемы. ER-схема специфицирует структуры баз данных и многие ограничения независимо от конкретной СУБД, и только затем отображается в схему более низкого уровня для конкретной СУБД. Фаза отображения известна как проектирование логической базы данных. И, наконец, детали хранения структур и методов доступа для базы данных выбираются во время проектирования физической базы данных.

Понятий, рассмотренных ранее, достаточно для представления многих прикладных баз данных, которые в основном встречаются в экономике и производстве. Однако с конца 1970 стали появляться новые приложения технологии баз данных; инженерное проектирование, образные и графические базы данных, картографические и геологические, многоаспектные (представляющие как традиционные, так и неструктурированные данные, такие как текст, рисунки, запись голоса) и основы знаний для приложений искусственного интеллекта. Эти типы баз данных имеют более сложные требования, чем традиционные. Для того чтобы представить эти требования наиболее точно и явно, требуется развить "семантику" понятий моделирования. Различные модели семантических данных были предложены в литературе. Прежде чем обсудить многие из них, мы включим их наиболее важные понятия в ER-модель и назовем ее EER (продвинутая ER) модель. После объяснения понятий EER модели, мы покажем, как эти понятия могут быть представлены в реляционной модели.