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