МДК.11.01 - 12 - Требования нормальных форм базы данных
В этом материале представлен общий перечень всех требований каждой нормальной формы базы данных.
Описание нормальных форм базы данных
Ранее мы с Вами очень подробно и с примерами рассмотрели нормализацию базы данных и все нормальные формы базы данных, материала получилось очень много, поэтому для каждой нормальной формы на сайте представлена отдельная статья, однако за счет такого объема информации достаточно трудно ориентироваться в предъявляемых требованиях той или иной нормальной формы и видеть общую картину.
Именно поэтому я решил сформировать итоговый материал по нормальным формам базы данных, в котором кратко перечислю все требования каждой нормальной формы.
Требования нормальных форм базы данных
Ну а сейчас давайте кратко рассмотрим требования всех нормальных форм базы данных.
Ненормализованная форма или нулевая нормальная форма (UNF)
Строки в таблицах не должны быть пронумерованы, т.е. порядок строк не имеет значения, так же как не имеет значения порядок столбцов.
Первая нормальная форма (1NF)
- В таблице не должно быть дублирующихся строк;
- В каждой ячейке таблицы должно храниться атомарное значение (одно не составное значение);
- В столбце должны храниться данные одного типа;
- Не должно быть массивов и списков.
Вторая нормальная форма (2NF)
- Таблица должна находиться в первой нормальной форме (1NF);
- Таблица должна иметь первичный ключ;
- Все неключевые столбцы таблицы должны зависеть от полного ключа (в случае если он составной)
Третья нормальная форма (3NF)
- Таблица должна находиться во второй нормальной форме (2NF);
- В таблице должна отсутствовать транзитивная зависимость. Неключевые столбцы не должны зависеть от значений других неключевых столбцов.
Нормальная форма Бойса-Кодда (BCNF)
- Таблица должна находиться в третьей нормальной форме (3NF);
- Ключевые атрибуты составного ключа не должны зависеть от неключевых атрибутов.
Четвертая нормальная форма (4NF)
- Таблица должна находиться в третьей нормальной форме (3NF) или в нормальной форме Бойса-Кодда (BCNF), если первичный ключ составной;
- В таблицах должны отсутствовать нетривиальные многозначные зависимости.
Пятая нормальная форма (5NF)
- Таблица должна находиться в четвертой нормальной форме (4NF);
- В таблице каждая нетривиальная зависимость соединения должна определяться потенциальным ключом этой таблицы, т.е. таблица не должна содержать зависимости соединения (декомпозиция без потерь).
Доменно-ключевая нормальная форма (DKNF)
- Таблица должна находиться в пятой нормальной форме (5NF);
- Каждое наложенное ограничение на таблицу должно являться логическим следствием ограничений доменов и ограничений ключей.
Ограничение домена — это ограничение, предписывающее использование для определенного атрибута значений только из некоторого заданного домена (набора значений).
Ограничение ключа — это ограничение, утверждающее, что некоторый атрибут или комбинация атрибутов представляет собой потенциальный ключ.
Шестая нормальная форма (6NF)
- Таблица должна находиться в пятой нормальной форме (5NF);
- Таблица должна удовлетворять всем нетривиальным зависимостям соединения (декомпозиция до конца).