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