Третья нормальная форма (3НФ)

Понятие третьей нормальной формы (3НФ) основывается на понятии нетранзитивной зависимости.

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

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

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

Рассмотрим пример. Предположим, среди описательных атрибутов таблицы «Студент» (см. табл. 3.1.1) имеются «Номер группы» и «Фамилия старосты группы» («Староста»). Эти атрибуты находятся между собой в транзитивной зависимости, так как фамилия старосты определяется только номером группы. В этом случае одна и та же фамилия старосты будет многократно повторяться в разных экземплярах данного информационного объекта, и наблюдаются затруднения в корректировке фамилии старосты в случае назначения нового старосты, а также неоправданный расход памяти для хранения дублированной информации (рис. 3.1.8).

Рис. 3.1.8. Транзитивная зависимость описательных реквизитов

Приведение к 3НФ осуществляется по следующим правилам:

ÿ атрибуты, находящиеся в транзитивной зависимости между собой, выносятся в отдельную (новую) таблицу и исключаются из исходной;

ÿ ключом новой таблицы становятся те атрибуты исходной, от которых была обнаружена транзитивная зависимость;

ÿ между новой и исходной таблицами устанавливается связь 1:М.

Таким образом, приведение к 3НФ является механизмом выявления упущенных отношений и связей. На рис. 3.1.9 показана схема приведения к 3НФ.

Рис. 3.1.9. Приведение к 3НФ


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



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