logo
Ответы Госы_3

24. Проектирование реляционных баз данных с использованием нормализации. Нормальные формы

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

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

Основные свойства нормальных форм :

- каждая следующая нормальная форма в некотором смысле лучше предыдущей;

- при переходе к следующему нормальному форме свойству предыдущих нормальных свойств хранятся.

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

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

В реляционной модели отношения всегда находится в первой нормальной форме по определению понятия отношения. Что же касается разных таблиц, то они могут не быть правильными представлениями отношений и, соответственно, могут не находиться в 1НФ.

таблица должна удовлетворять следующим пяти условий:

Ни упорядочивание строк сверху вниз. Ни упорядочивание столбцов слева направо. Ни повторяемых строк. Каждое пересечение строки и столбца содержит ровно одно значение из соответствующего домену (и больше ничего). Все столбики являются обычными.

Вторая нормальная форма (2NF)

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

Или другими словами: в 2NF нет неключевых атрибутов, зависимых от части сложного потенциального ключа.

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

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

Отношение находится в 3NF тогда и только затем, когда выполняются следующие условия:

Отношение находится во второй нормальной форме;

Каждый неключевых атрибут отношения находится в нетранзитивно (то есть прямой) в зависимости от потенциального ключа.

Таким образом, отношение находится в 3NF тогда и только затем, когда оно находится в 2NF и отсутствующие транзитивные зависимости неключевых атрибутов от ключевых. Транзитивной зависимостью неключевых атрибутов от ключевых называется следующая: {A} → {B} и {B} → {C}, где {A} - потенциальный ключ, {B} и {С} - разные множества неключевых атрибутов.

таблица находится в 3NF тогда и только затем, когда для каждой из ее функциональных зависимостей X → A выполняется хотя бы одно из таких условий : Х содержит А (то есть X → A - тривиальная функциональная зависимость); Х - суперключ; А - первичный атрибут (то есть А входит в состав альтернативного ключа).