Курсовая работа: Создание базы данных "РЭО-ГАИ"

Рис.2.2.1 - Диаграмма связей таблиц в базе данных
Нормализация - это пошаговый обратимый процесс композиций и
декомпозиций исходных отношений, обладающих лучшими свойствами при включении,
изменении, удалении данных, назначении им ключей по определенным правилам и
выявлении всех функциональных зависимостей.
Первая нормальная форма
Таблица находится в 1NF
тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле
более одного значения и ни одно из ее ключевых полей не пусто. Таблица
находится в 1-ой форме
Вторая нормальная форма
Рассмотрим схему отношения:
Владельцы (РНН владельца, Признак владельца,
ФИО/Наименование, Адрес владельца, Телефон, Адрес стоянки авто, Пол, Год
рождения, № уд. личности, Дата выдачи, Профессия)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости
РНН владельца - ФИО
РНН владельца - Адрес владельца
РНН владельца - Адрес стоянки авто
РНН владельца - Пол
РНН владельца - Год рождения
РНН владельца - № уд. личности
РНН владельца - Дата выдачи
РНН владельца - Профессия
№ уд. личности - Дата выдачи
Признак владельца - Наименование
Видно, что, хотя первичным ключом является составной атрибут
РНН владельца, Признак владельца, атрибут ФИО/Наименование зависит от части
первичного ключа. В результат при Признаке владельца - юридическое лицо, мы не
сможем вставить кортеж, с Полом, Годом рождения и Профессией владельца. Можно
произвести следующую декомпозицию отношения Владельцы на два отношения: Владельцы
- юр_лица и Владельцы-физ_лица.
Владельцы-юр_лица (РНН владельца, Признак владельца,
Наименование, Адрес владельца, Адрес стоянки авто, Телефон)
Первичный ключ
РНН владельца, Признак владельца
Функциональные зависимости:
РНН владельца, Признак владельца - Наименование
РНН владельца, Признак владельца - Адрес владельца
РНН владельца, Признак владельца - Телефон
РНН владельца, Признак владельца - Адрес стоянки авто
Владельцы-физ_лица (РНН владельца, Признак владельца, ФИО,
Адрес владельца, Телефон, Адрес стоянки авто, Пол, Год рождения, № уд. личности,
Дата выдачи, Профессия)
РНН владельца, Признак владельца - ФИО
РНН владельца, Признак владельца - Адрес владельца
РНН владельца, Признак владельца - Телефон
РНН владельца, Признак владельца - Адрес стоянки авто
РНН владельца, Признак владельца - Пол
РНН владельца, Признак владельца - Год рождения
РНН владельца, Признак владельца - № уд. личности
РНН владельца, Признак владельца - Дата выдачи
РНН владельца, Признак владельца - Профессия
№ уд. личности - Дата выдачи
Каждое из этих двух отношений находятся в 2 NF
Третья нормальная форма
Рассмотрим отношение Владельцы-физ_лица. Функциональная зависимость
РНН владельца - Дата выдачи является транзитивной; она является следствием
функциональных зависимостей РНН владельца - № уд. личности и № уд. личности -
Дата выдачи. То есть, дата выдачи является характеристикой удостоверения
личности владельца.
Можно декомпозировать отношение Владельцы-физ_лица в два
отношения Владельцы-физ_лица-уд. личности и Удостоверения личности:
Владельцы-физ_лица-уд. личности (РНН владельца, Признак
владельца, ФИО, Адрес владельца, Телефон, Адрес стоянки авто, Пол, Год рождения,
№ уд. личности, Профессия)
Первичный ключ:
Возможные функциональные зависимости:
РНН владельца, Признак владельца - ФИО
РНН владельца, Признак владельца - Адрес владельца
РНН владельца, Признак владельца - Телефон
РНН владельца, Признак владельца - Адрес стоянки авто
РНН владельца, Признак владельца - Пол
РНН владельца, Признак владельца - Год рождения
РНН владельца, Признак владельца - № уд. личности
РНН владельца, Признак владельца - Профессия
Удостоверения личности (№ удостоверения личности, Дата выдачи)
Первичный ключ:
№ уд. личности
Возможные функциональные зависимости:
№ уд. личности - Дата выдачи
Каждое из этих двух отношений находится в 3NF.
Нормальная форма Бойса-Кодда
Рассмотрим схему отношения Владельцы-физ_лица-уд. личности (РНН
владельца, Признак владельца, ФИО, Адрес владельца, Телефон, Адрес стоянки
авто, Пол, Год рождения, № уд. личности, Профессия)
Здесь личность владельца может полностью определятся как
именем, так и его РНН.
Можно произвести декомпозицию отношения в два отношения: Владельцы-физ_лица-имена
и
Владельцы-физ_лица-имена (РНН владельца, ФИО)
Первичный ключ: РНН владельца
Функциональные зависимости:
РНН владельца - ФИО
Владельцы-физ_лица-атрибуты (РНН владельца, Признак
владельца, Адрес владельца, Телефон, Адрес стоянки авто, Пол, Год рождения, №
уд. личности, Профессия)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Адрес владельца
РНН владельца, Признак владельца - Телефон
РНН владельца, Признак владельца - Адрес стоянки авто
РНН владельца, Признак владельца - Пол
РНН владельца, Признак владельца - Год рождения
РНН владельца, Признак владельца - № уд. личности
РНН владельца, Признак владельца - Профессия
Четвертая нормальная форма
Видим, что каждому владельцу соответствует множество,
состоящее из нуля или более значений атрибута телефон (А→В), также как и
соответствует множество, состоящее из нуля или более значений атрибута адрес
стоянки авто (А→С). Но телефон владельца авто не зависит от адреса стоянки
авто.
Многозначные зависимости:
РНН владельца →→ Телефон
РНН владельца →→ Адрес стоянки авто
Можно произвести декомпозицию отношения:
Владельцы-физ_лица-телефоны (РНН владельца, Признак
владельца, Адрес владельца, Телефон, Пол, Год рождения, № уд. личности,
Профессия
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Адрес владельца
РНН владельца, Признак владельца - Телефон
РНН владельца, Признак владельца - Пол
РНН владельца, Признак владельца - Год рождения
РНН владельца, Признак владельца - № уд. личности
РНН владельца, Признак владельца - Профессия
Владельцы-физ_лица-адреса стоянок (РНН владельца, Признак
владельца, Адрес владельца, Адрес стоянки авто, Пол, Год рождения, № уд. личности,
Профессия)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Адрес владельца
РНН владельца, Признак владельца - Адрес стоянки авто
РНН владельца, Признак владельца - Пол
РНН владельца, Признак владельца - Год рождения
РНН владельца, Признак владельца - № уд. личности
РНН владельца, Признак владельца - Профессия
Отношения находятся в 4NF
Пятая нормальная форма
Таблица находится в пятой нормальной форме 5NF, тогда и только тогда, когда в каждой ее полной
декомпозиции все проекции содержат возможный ключ.
Декомпозиция отношений6
Владельцы-юр_лица_наименования (РНН владельца, Признак
владельца, Наименование)
Первичный ключ
РНН владельца, Признак владельца
Функциональные зависимости:
РНН владельца, Признак владельца - Наименование
Владельцы-юр_лица_адреса владельцев (РНН владельца, Признак
владельца, Адрес владельца)
Первичный ключ
РНН владельца, Признак владельца
Функциональные зависимости:
РНН владельца, Признак владельца - Адрес владельца
Владельцы-юр_лица_адреса стоянок авто (РНН владельца,
Признак владельца, Адрес стоянки авто, Телефон)
Первичный ключ
РНН владельца, Признак владельца
Функциональные зависимости:
РНН владельца, Признак владельца - Адрес стоянки авто
Владельцы-юр_лица_телефоны (РНН владельца, Признак
владельца, Телефон)
Первичный ключ
РНН владельца, Признак владельца
Функциональные зависимости:
РНН владельца, Признак владельца - Телефон
Владельцы-физ_лица-имена (РНН владельца, ФИО)
Первичный ключ: РНН владельца
Функциональные зависимости:
РНН владельца - ФИО
Владельцы-физ_лица_адреса владельцев (РНН владельца, Признак
владельца, Адрес владельца)
Первичный ключ: РНН владельца, Признак владельца
РНН владельца, Признак владельца - Адрес владельца
Владельцы-физ_лица-телефоны (РНН владельца, Признак
владельца, Телефон, рождения)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Телефон
Владельцы-физ_лица-адреса стоянок (РНН владельца, Признак
владельца, Адрес стоянки авто)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Адрес стоянки авто
Владельцы-физ_лица-пол (РНН владельца, Признак владельца,
Пол)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Пол
Владельцы-физ_лица-год рождения (РНН владельца, Признак
владельца, Год рождения)
Первичный ключ: РНН владельца, Признак владельца
Возможные функциональные зависимости:
РНН владельца, Признак владельца - Год рождения
Владельцы-физ_лица-уд. личности (РНН владельца, Признак
владельца, № уд. личности)
Страницы: 1, 2, 3, 4, 5 |