Четвертая нормальная форма

Пусть имеется отношение ПРОЕКТ с атрибутами НОМЕР СОТРУДНИКА, НОМЕР ПРОЕКТА, НОМЕР ЗАДАНИЯ.

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

Исходя из описания предметной области, первичный ключ этого отношения является составным и состоит из всех атрибутов этого отношения:

Проект.(Номер проекта + Номер сотрудника + Номер задания)

В отношении нет никаких других детерминантов. Следовательно, отношение ПРОЕКТ находится в НФБК. Однако в соответствии с семантикой предметной области в отношении ПРОЕКТ имеются две многозначные зависимости:

Проект.Номер проекта ®® Проект.Номер сотрудника

Проект.Номер проекта ®® Проект.Номер задания

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

Отношение R находится в четвертой нормальной форме (4НФ) в том и только в том случае, если в случае существования многозначной зависимости атрибута B от атрибута A (R.A ®® R.B) все остальные атрибуты этого отношения функционально полно зависят от A.

Таким образом, исходя из определения отношение ПРОЕКТ не находится в 4НФ. Другими словами, для того чтобы отношение удовлетворяло условию 4НФ необходимо, чтобы между атрибутами этого отношения существовала не более чем одна многозначная зависимость.

Нормализация отношения ПРОЕКТ основывается на теореме Фейджина и заключается в его декомпозиции на два отношения:

Проект1 (Номер проекта, Номер сотрудника)

Проект2 (Номер проекта, Номер задания)

Оба этих отношения находятся в четвертой нормальной форме.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: