
- •Министерство образования Российской Федерации
- •Базы данных Методические указания
- •1 Уровни представления данных
- •2 Построение концептуальной модели предметной области
- •3 Методология инфологического проектирования idef1x
- •3.1 Основные элементы lDeFlX-диаграммы
- •3.2 Построение мифологической модели
- •3.2.1 Определение сущностей
- •3.2.2 Определение зависимостей между сущностями
- •3.2.3 Определение альтернативных ключей
- •3.2.4. Связи категоризации
- •3.3 Средство автоматизации разработки концептуальной, додели предметной области eRwin
- •3.3.1 Создание сущностей и связей между ними
- •3.3.2 Определение атрибутов
- •3.3.3 Определение характеристик связи
- •3.3.4 Другие возможности системы eRwin
- •3.3.5 Пример построения ideFlX-диаграммы
- •4. Логическое проектирование
- •4.1. Обоснование необходимости нормализации.
- •4.2 Нормальные формы отношений
- •4.3 Нормализация через декомпозицию
- •Idef1x – диаграмма
- •Содержание курсового проекта
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НФ путем декомпозиции.