Лекция 11. Нормальные формы

Лекция 11. Нормальные формы

 

Содержание лекционного занятия:

·         первая нормальная форма

·         вторая нормальная форма

 

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

В теории реляционных баз данных обычно выделяется следующая последователь­ность нормальных форм:

·         первая нормальная форма (1NF);

·         вторая нормальная форма (2NF);

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

·         нормальная форма Бойса—Кодда (BCNF);

·         четвертая нормальная форма (4NF);

·         пятая нормальная форма, или нормальная форма проекции-соединения (5NF или PJ/NF).

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

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

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

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

Наиболее важные на практике нормальные формы отношений основываются на фундаментальном в теории реляционных баз данных понятии функциональной зависимости. Функционально зависимым считается такой атрибут, значение ко­торого однозначно определяется значением другого атрибута. Функционально за­висимые атрибуты обозначаются следующим образом: X> Y. Эта запись означа­ет, что если два кортежа в таблице имеют одно и то же значение атрибута X, то они имеют одно и то же значение атрибута Y. Атрибут, указываемый в левой части, называется детерминантом.

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

Первая нормальная форма

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

Вторая нормальная форма

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

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

1.         Определить, на какие части можно разбить первичный ключ, так чтобы некото­рые из неключевых полей зависели от одной из этих частей (причем эти части могут содержать несколько атрибутов).

2.         Создать новую таблицу для каждой такой части ключа и группы зависящих от нее полей и переместить их в эту таблицу. Часть бывшего первичного ключа станет при этом первичным ключом новой таблицы.

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

В нашем примере для приведения таблицы СОТРУДНИКИ ко второй нормаль­ной форме ее следует разделить на две таблицы. Первичный ключ исходной таб­лицы состоит из двух атрибутов — «Код сотрудника» и «Должность». Все же лич­ные данные о сотрудниках зависят только от атрибута «Код сотрудника». Атрибуты, соответствующие этим данным, мы и выделим в качестве одной из таблиц, кото­рую назовем ФИЗИЧЕСКИЕ ЛИЦА. Информацию же о должностях и их оплате вынесем в другую таблицу, которой присвоим имя СОТРУДНИКИ. Схема при­ведения таблицы ко второй нормальной форме приведена на рис. 3.

image

Рис. 3. Приведение таблицы ко второй нормальной форме

Полученные две таблицы связаны между собой по полю «Код физического лица», которое является первичным ключом для таблицы ФИЗИЧЕСКИЕ ЛИЦА и внешним ключом для таблицы СОТРУДНИКИ. Данное поле отсутствовало в исход­ной таблице и было добавлено при проведении нормализации.

 

Вопросы для самоконтроля:

1.Создание структуры баз данных.

2.Что представляет собой структура баз данных?

 

Рекомендуемая литература:

1. Дейт К.Дж. Введение в системы баз данных. - К.: Диалектика, 1998. - 784 с.

2. Ульман Дж., Уидом Д. Основы систем баз данных. - М.: ЛОРИ, 2000. - 374 с.

 


Ұқсас жұмыстар

Қoймaның дeрeктeр бaзacын жoбaлaу
Сабақ кестесі
Қанның құрамы, физикалық-химиялық қасиеттері мен қызметі
Стандарттау әдістері
Етістіктің аналитикалық форманттары пәнінен лекциялар жинағы
Өндірістің қaржылық тұрaқтылығын тaлдaу жәнe жeтілдіру жoлдaры
Қылмысқа қатысушылықпен жасалған іс-әрекеттерді саралау
«Мылтық ату» пәнінің оқу - әдістемелік кешені
Бастапқы объекттер
Жер қабығы (құрамы, қозғалыстары), бедер туралы жалпы мәліметтер