17. Нормальные формы (INF, 2NF, 3NF, 4NF)

Первая нормальная форма (1NF) гласит – все атрибуты сущности содержат атомарные (неделимые) значения и среди атрибутов не должно встречаться повторяющихся групп. То есть, с одной стороны, атрибуты не должны содержать повторяющихся групп (нескольких значений атрибута) и, с другой, – атрибут не должен хранить разные по смыслу значения. Приведение к 1NF форме производится созданием новой таблицы для повторяющихся значений и установлением связи от прежней таблицы (PK) к новой (FK).

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

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

Сущность находится в четвертой нормальной форме (4NF), если ни в одной строке нет нескольких многозначных фактов об одном объекте, т.е. нет многозначных зависимостей между атрибутами. Сущность приводится к 4NF выделением атрибутов с многозначными фактами в отдельные таблицы. Case система AllFusion Erwin Data Modeler помогает создание нормализованной модели БД, контролирует уникальность имени атрибута, поддерживает создания ключей и связей.