Требования второй нормальной формы - 2NF

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

(код, номер_месяца).

Введем понятие полной функциональной зависимости.

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

Рассмотрим неприводимое множество функциональных зависимостей для отношения Доходы_сотрудников:

(код, месяц) ® доход

код ® ФИО

Первая ФЗ является полной, вторая ФЗ имеет в качестве детерминанта подмножество составного ключа. Именно эта ФЗ создает дублирование значений атрибута ФИО, поэтому является нежелательной. Дублирование информации создает и проблемы обновления: в случае необходимости изменения ФИО (допустим, сотрудник обнаружил ошибку в записи своей фамилии), исправления придется вносить 12 раз.

Для устранения нежелательной ФЗ выполним декомпозицию в соответствии с теоремой Хеза – выделим эту ФЗ в отдельное отношение. В итоге получим нормализованную структуру из двух отношений:

Сотрудники (код, ФИО)

Доходы_сотрудников (код, номер_месяца, доход)

Для этого примера процесс нормализации завершен – ни одно из отношений больше не содержит нежелательных ФЗ. Дублирование информации устранено.

Таким образом, можно дать определение второй нормальной формы:

Отношение находится в 2NF, если оно находится в 1NF и каждый неключевой атрибут функционально полно зависит от ключа.








Дата добавления: 2015-08-26; просмотров: 980;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.