Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по БД.doc
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
275.46 Кб
Скачать

4.2 Нормальные формы отношений

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

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

Другими словами, значения в домене не могут являться списками или множествами простых или сложных значений.

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

Определение 2. Схема базы данных находится в 1НФ, если каждая схема отношения в этой базе данных находится в 1НФ

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

Определение 3. Для данного множества функциональных зависимостей F и зависимостей X→Y € F+ множество Y называется частично зависимым от X относительно F, если существует X' X такой, что зависимость X →Y € F+.

В противном случае говорят, что Y полностью зависит от X.

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

С другой стороны, в зависимости Студент, Преподаватель→Тема_КП (тема курсового проекта) атрибут Тема_КП полностью зависит от левой части зависимости.

Определение 4. Для данной схемы отношения R, атрибута А в R и множества функциональных зависимостей F на R атрибут А называется первичным в R относительно F, если А содержится в каком-либо ключе схемы R.

В противном случае атрибут А называется не первичным в R

В различных схемах один и тот же атрибут может быть как первичным, так и не первичным. Так атрибут Группа является первичным в отношении ЗАНЯТИЕ, так как входит в ключ Ауд., Пара, N_Недели, Группа, и не первичным в отношении СТУДЕНТ.

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

Схема базы данных имеет вторую нормальную форму относительно F, если каждая схема отношения в этой базе данных находится во 2НФ относительно F.

Определение 6. Для данной схемы отношения R, подмножества X множества R, атрибута А в R и множества функциональных зависимостей F атрибут А называется транзитивно зависимым от X в R, если существует подмножество Y R такое, что X→Y, Y→X, Y→A относительно F и A XY.

Так, в функциональной зависимости Студент→Группа, Специальность, атрибут Специальность транзитивно зависит от атрибута Студент, так как существуют зависимости Студент→Группа, Группа→Студент и Группа→Специальность.

Определение 7. Схема отношения R находится в третьей нормальной форме (ЗНФ) относительно множества функциональных зависимостей F, если она находится в 1НФ и ни один из непривычных атрибутов в R не является транзитивно зависимым от ключа для R.

Схема базы данных находится в третьей нормальной форме относительно F, если каждая схема отношения находится в 3НФ относительно F.

Тогда схема базы данных, содержащая одно отношение R= {Студент, Группа, Специальность), не находится в 3НФ. В 3НФ находится схема базы данных, содержащая две схемы отношения R1={Студент, Группа} и R2={Группа, Специальность}.

Отношения в 3НФ, как правило, избавлены от неудобств, присущих ненормализованным отношениям. Поэтому процесс нормализации, чаще всего, заканчивается приведением схем отношений к 3НФ.

Рассмотрим алгоритм приведения схем отношений к 3НФ путем декомпозиции.