Вторая нормальная форма. Многозначные зависимости. Функциональные зависимости между не первичными атрибутами и ключами

Страницы работы

Содержание работы

Вторая нормальная  форма. Пусть Х - ключ отношения R, YÌ X, A - не первичный  атрибут отношения R. Если Х ÞА и YÞА, то говорят, что в отношении R имеет место частичная зависимость (неполная функциональная зависимость). Если это условие не выполняется, то говорят ,что  атрибут А функционально полно зависит от Х в отношении R .

Схема отношения находится во второй нормальной форме ( 2НФ), если она находится в 1НФ, и каждый ее не первичный атрибут функционально полно зависит от первичного ключа.

Пример:

Посмотрим на построенные выше отношения. Только в одном « Заказ» присутствует составной ключ < код клиента>, < код автомобиля>, < дата заказа>.

Проверим , является ли это отношение во 2НФ. Для этого выделим функциональные зависимости между не первичными атрибутами и ключами:

< код автомобиля> Þ код марки, дата изготовления.

Так как не ключевые атрибуты зависят не от всего ключа, а только от части, то отношение не во 2НФ. Необходимо провести его декомпозицию, построив по неполной функциональной зависимости новое отношение «автомобиль».

Заказ

<дата заказа>

сумма заказа

<код клиента>

<код автомобиля>

автомобиль

< код автомобиля>

код марки

дата изготовления

Проверим отношение «Заказ» еще раз. Выясняется, что, так как в заказе может участвовать только 1 автомобиль, то « сумма заказа» не зависит от клиента, также не зависит и от даты, следовательно:

< код автомобиля> Þ сумма заказа.

Можно сделать вывод, что предыдущее отношение было разбито неправильно, так как данная зависимость содержит ключ < код автомобиля> уже являющегося ключом отношения « автомобиль». Новое отношение в этом случае не строится, а в существующие отношения « автомобиль» добавляется поле « цена автомобиля» ( это и есть сумма заказа).

заказ

<дата заказа>

<код клиента>

<код автомобиля>

автомобиль

<код автомобиля>

код марки

дата изготовления

цена автомобиля

+  «клиент» и «марка автомобиля».

Третья нормальная форма. Схема отношения R находится в третьей нормальной форме ( 3НФ), если не существует ключа Х для R, множество атрибутов YÍR и не первичного атрибута А из R таких, что X ÞY справедливо в R; Y ÞА справедливо в R, но YÞX не имеет места.

Другими словами, отношение находится в 3НФ, если оно находится в 2НФ, и каждый не первичный атрибут нетранзитивно зависит от первичного ключа   ( не идентифицируется с помощью неключевого поля).

Сведение отношения к 3НФ предполагает разделение его на 2 и более отношений путем выделения тех атрибутов, которые не зависят от ключевого.

Пример.

Рассмотрим схемы отношений из предыдущего примера. Отношения «Заказ», «Автомобиль», «Марка» удовлетворяют условиям 3НФ, но отношение клиент - нет, так как имеется связь: предприятие Þ руководитель, т. е. «руководитель» транзитивно зависит от < кода клиента> ( код клиента Þ предприятие). Выделим атрибут связи, не содержащей ключа, в отдельное отношение « предприятие»: предприятие Þ руководитель, клиент Þ предприятие, но предприятие Þ клиента нет.

предприятие

<код предприятия>

назв. предприятия

руководитель

клиент

<код клиента>

ФИО клиента         

адрес

телефон

код предприятия

заказ

<дата заказа>

<код клиента>

<код автомобиля>

автомобиль

<код автомобиля>

код марки

дата изготовления

цена автомобиля

марка автомобиля

<код марки>

марка

изготовитель

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

Для большинства проектируемых БД приведение к 3НФ является вполне достаточным. В тех случаях, когда в отношении имеется не один возможный ключ, то приведение к 3НФ не всегда позволяет избавиться от аномалий операций. В этом случае рассматривают «усиленную» 3НФ ( нормальная форма Бойса - Кодда).

Она формируется следующим образом: если схема отношения R находится в нормальной форме Бойса - Кодда, то всегда, когда имеет место зависимость ХÞА и АÏХ, Х включает некоторый ключ отношения R.

О нормальной форме Бойса - Кодда можно сказать, что отношение находится в ней, если любая функциональная зависимость между его атрибутами является полной функциональной зависимостью от возможного ключа.

Если в отношении присутствуют многозначные зависимости , то для исключения всех аномалий необходимо приводить схему отношения к четвертой нормальной форме (4НФ).

Рассмотрим понятие многозначной зависимости. Обозначаются X ->>Y(«X мультиопределяет Y» или « существует многозначная зависимость Y от X»).

Пусть задана схема отношения R, и Y и Х - подмножество множества R. Говорят, что Х->>Y, если при заданных значениях атрибутов из Х существует множество ассоциированных значений атрибутов из Y, и это множество Y-значений никак не связаны с остальными значениями атрибутов (R - X - Y).

Другими словами, атрибут Х многозначно определяет атрибут Y, если для каждого значения X существует хорошо определенное множество соответствующих значений Y.

Пример.

На кафедре читается курс информатики разными преподавателями, но по одинаковым учебникам, что отражено в следующем отношении:    

дисциплина

преподаватель

учебник

информатика

Шипилов П. А.

Форсайт Р. Паскаль для всех

информатика

Шипилов П. А.

Уэйт М. и др. Язык Си

информатика

Петров А. Г.

Форсайт Р.

информатика

Петров А. Г.

Уэйт М.

Многозначные зависимости : дисциплина Þ учебник (1 дисциплине соответствуют 2 учебника), дисциплина Þ преподаватель( 1 дисциплине соответствуют 2 преподавателя), а преподаватель и учебник не связаны функциональной зависимостью.

Наличие многозначных зависимостей приводит к сильным аномалиям: например, добавьте еще 1 учебник или еще 1 преподавателя.

При наличие многофункциональных зависимостей строя дополнительно 4НФ и 5НФ.

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

Таблица находится в 5НФ, тогда и только тогда, когда в каждой ее полной декомпозиции все проекции содержат возможный ключ. Отношение, не имеющее ни одной полной декомпозиции, также находится в 5НФ.

4НФ является частным случаем 5НФ. Отношение находится в 4НФ, когда ее полная композиция является соединением равно двух проекций.

Похожие материалы

Информация о работе