ГОС_Правила порождения реляционных отношений из..

2.Правила порождения реляционных отношений из модели "сущность-связь"

2.1.Бинарные связи
Тип связи
Пример связи
Правило построения отношений
Отношения

(1,1):(1,1)
[ Cкачайте файл, чтобы посмотреть картинку ]
Требуется только одно отношение. Первичным ключом данного отношения может быть ключ любой из сущностей.
[ Cкачайте файл, чтобы посмотреть картинку ]

(1,1):(0,1) (1,1):(0,n)
[ Cкачайте файл, чтобы посмотреть картинку ]
Для каждой сущности создается свое отношение, при этом ключи сущностей служат ключами соответствующих отношений. Кроме того, ключ сущности с обязательным классом принадлежности добавляется в качестве внешнего ключа в отношение, созданное для сущности с необязательным классом принадлежности.
[ Cкачайте файл, чтобы посмотреть картинку ]

(0,1):(0,1)
[ Cкачайте файл, чтобы посмотреть картинку ]
Необходимо использовать три отношения: по одному для каждой сущности (ключи сущностей служат первичными ключами отношений) и одно отношение для связи. Отношение, выделенное для связи, имеет два атрибута - внешних ключа - по одному от каждой сущности.
[ Cкачайте файл, чтобы посмотреть картинку ]

(0,1):(0,n) (0,1):(1,n)
[ Cкачайте файл, чтобы посмотреть картинку ]
Формируются три отношения: по одному для каждой сущности, причем ключ каждой сущности служит первичным ключом соответствующего отношения, и одно отношение для связи. Отношение, выделенное для связи, имеет два атрибута - внешних ключа - по одному от каждой сущности.
[ Cкачайте файл, чтобы посмотреть картинку ]

n : m
[ Cкачайте файл, чтобы посмотреть картинку ]
В этом случае всегда используются три отношения: по одному для каждой сущности, причем ключ каждой сущности служит первичным ключом соответствующего отношения, и одно отношение для связи. Последнее отношение должно иметь среди своих атрибутов внешние ключи, по одному от каждой сущности.
[ Cкачайте файл, чтобы посмотреть картинку ]


2.2.N - арные связи.
Общее правило: для представления n-сторонней связи всегда требуется n+1 отн°ошение. Например, в случае трехсторонней связи необходимо использовать четыре отношения, по одному для каждой сущности (причем ключ сущности служит первичным ключом соответствующего отношения), и одно для связи. Отношение, порождаемой для связи, будет иметь среди своих атрибутов ключи от каждой сущности.
[ Cкачайте файл, чтобы посмотреть картинку ]

2.3.Иерархические связи.
К сожалению, надо признать, что реляционная модель мало подходит для отображения отношений наследования между сущностями (иерархических связей). Напомним, что в таких связях дочерние сущности наследуют все атрибуты родительской, и каждая из них обладает своим уникальным набором дополнительных атрибутов.
В этом случае возможны два варианта построения реляционных отношений. Согласно первому для иерархической структуры создается одно отношение, которое содержит атрибуты связи и всех сущностей. Недостаток такого способа - для каждого кортежа часть атрибутов всегда будет неопределена. Более того, этот факт является требованием целостности сущности, следовательно для СУБД должны быть явно указаны несколько списков атрибутов (по числу дочерних сущностей), причем определенные значения могут быть присвоены только членам одного из них. Реляционная модель не поддерживает такого ограничения, на практике его реализуют с помощью триггеров.
По второму способу генерируется по одному отношению для каждой дочерней сущности. Каждое из этих отношений включает атрибуты родительской сущности и связи кроме атрибутов - дискриминантов. Недостатком данного способа является невозможность получить в одном запросе список всех заказчиков.
Оба описанных способа представлены на рисунке:
[ Cкачайте файл, чтобы посмотреть картинку ]

Следует отметить, что построенные таким образом реляционные отношения, не являются окончательной схемой базы данных. Их необходимо проверить на избыточные функциональные зависимости и привести к NFBK или нормальной форме более высокого порядка.
Применив все эти правила к модели "сущность-связь" базы данных publications, построенной в предыдущем параграфе, получим следующую реляционную структуру:
[ Cкачайте файл, чтобы посмотреть картинку ]
Синим цветом на диаграмме выделены первичные ключи, красным - внешние. Отношения, созданные для представления связей, обозначены серыми прямоугольниками, для сущностей - желтыми прямоугольниками.

Рисунок 46Рисунок 49Рисунок 50Рисунок 51Рисунок 52Рисунок 53Рисунок 54Рисунок 61 Заголовок 2 Заголовок 315

Приложенные файлы

  • doc 6965446
    Размер файла: 62 kB Загрузок: 0

Добавить комментарий