Студопедия — Третья нормальная форма
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Третья нормальная форма






Для введения понятия третьей нормальной формы сначала дается определение транзитивной зависимости.

Если для атрибутов А, В и С некоторого отношения существуют за висимости вида А—>В и В—>С, то говорят, что атрибут С транзитивно зависит от атрибута А через атрибут В (при условии, что атрибут А функционально не зависит ни от атрибута В, ни от атрибута С).

Транзитивная зависимость является описанием такого типа функциональной за­висимости, которая возникает при наличии следующих функциональных зависимо­стей между атрибутами А, В и С:

А->В и В—>С.

В данном случае транзитивная зависимость А—>С осуществляется через атрибут В. Это утверждение справедливо только в том случае, если атрибут А функционально не зависит от атрибутов В и С.

Дадим определение третьей нормальной формы

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

Пример.

Пусть R = {РЕЙС, ДАТА, КОД-ПИЛОТА, ИМЯ} и множество функциональных зависимостей F= {РЕЙС ДАТА→ КОД-ПИЛОТА, ИМЯ; КОД-ПИЛОТА→ ИМЯ, ИМЯ→КОД-ПИЛОТА}. Атрибут ИМЯ является транзитивно зависимым от РЕЙС и ДАТА, так как РЕЙС, ДАТА → КОД-ПИЛОТА, КОД-ПИЛОТА →РЕЙС ДАТА и КОД-ПИ­ЛОТА → ИМЯ.

 

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

ПРИМЕР. Рассмотрим отношение КЛИЕНТ_АРЕНДА

Таблица 6.Отношение КЛИЕНТ_АРЕНДА

Номер клиента Номер объекта недвижимости ФИО клиента Адрес недвижимости Начало аренды Конец аренды Арендная плата Номер владельца ФИО владельца
СР76 ЗП4 Петр Иванов Кирова, 150 1/07/04 31/09/04   СО4 Иванова Тамара
СР76 ЗП16 Петр Иванов Ленина,137 1/09/01 1/09/03   СО93 Ким Л.А.
СР56 ЗП4 Алина Красева Кирова, 150 1/05/04 1/06/04   СО4 Иванова Тамара
СР56 ЗП36 Алина Красева 2 Бульварная, 35 10/10/99 01/12/04   СО93 Ким Л.А.
СР56 ЗП16 Алина Красева Абая, 170 1/01/96 10/08/99   СО93 Ким Л.А.

 

Отношение находится в 1НФ. В качестве первичного ключа выделим атрибуты: {Номер клиента, Номер объекта недвижимости}. Отношение обладает следующими функциональными зависимостями:

Номер клиента, Номер объекта недвижимостиàНачало аренды, Конец аренды

Номер клиентаàИмя клиента

Номер объекта недвижимостиàАдрес недвижимости, Арендная плата, Номер владельца, ФИО владельца

Номер владельцаàФИО владельца

Номер клиента, Начало арендыàНомер объекта недвижимости, Адрес недвижимости, Конец аренды, Арендная плата, Номер владельца, ФИО владельца

Номер объекта недвижимости, Начало арендыàНомер клиента, ФИО клиента, Конец аренды (Первичный ключ)

Рис.2. Функциональные зависимости отношения КЛИЕНТ_АРЕНДА

 

FD1: Номер клиента, Номер объекта недвижимости → Начало аренды, Конец аренды (первичный ключ)

FD2: Номер клиента → ФИО клиента (частичная зависимость)

FD3: Номер объекта недвижимости → Адрес недвижимости, Арендная плата, Номер владельца, ФИО владельца (частичная зависимость)

FD4: Номер владельца → ФИО владельца (транзитивная зависимость)

FD5: Номер клиента, Начало аренды → Номер объекта недвижимости, Адрес недвижимости, Конец аренды, Арендная плата, Номер владельца, ФИО владельца (потенциальный ключ)

FD6: Номер объекта недвижимости, Начало аренды → Номер клиента, ФИО клиента, Конец аренды (потенциальный ключ)

Найдем хотя бы один случай частичной зависимости от первичного ключа. Например, зависимость FD -2. Атрибут ФИО клиента зависит только от атрибута Номера клиента, т.е. имеет место зависимость от части ключа. Кроме того, атрибуты объекта недвижимости (Адрес, Арендная плата, Номер владельца, ФИО владельца) также частично зависят от первичного ключа, но в этом случае от атрибута Номер объекта недвижимости (см. Ф3).Атрибуты {Начало аренды, Конец аренды} полностью функционально зависят от первичного ключа в целом (см. Ф1). Ф4 –транзитивная зависимость. Это типичный пример транзитивной зависимости, которая имеет место при наличии зависимости не вхо­дящего в первичный ключ атрибута (Имя владельца) от одного или нескольких других атри­бутов, также не входящих в первичный ключ (Номер владельца).

Обнаружение частичных зависимостей внутри отношения КЛИЕНТ_АРЕНДА означает, что данное отношение не находится в 2 НФ. Для преобразования его в 2 НФ необходимо создать новые отношения, причем так, чтобы атрибуты, не входящие в первичный ключ, были перемещены в них вместе с копией части первичного ключа, от которой они функционально зависят.

Для преобразования отношения КЛИЕНТ_АРЕНДА в 2НФ создадим три новых отношения: КЛИЕНТ, АРЕНДА, СВОЙСТВО_СОБСТВЕННОСТИ, в которых каждый атрибут, не входящий в первичный ключ, полностью функционально зависит от первичного ключа отношения:

КЛИЕНТ (Номер клиента, ФИО клиента)

АРЕНДА(Номер клиента, Номер объекта недвижимости, Начало аренды, Конец аренды)

СВОЙСТВО_СОБСТВЕННОСТИ(Номер объекта недвижимости, Адрес недвижимости, Арендная плата, Номер владельца, ФИО владельца)

 

Таблица 7. Отношение КЛИЕНТ

Номер клиента ФИО клиента
СР76 Петр Иванов
СР56 Алина Красева

 

Таблица 8. Отношение АРЕНДА

Номер клиента Номер объекта недвижимости Начало аренды Конец аренды
СР76 ЗП4 1/07/04 31/09/04
СР76 ЗП16 1/09/01 1/09/03
СР56 ЗП4 1/05/04 1/06/04
СР56 ЗП36 10/10/99 01/12/04
СР56 ЗП16 1/01/96 10/08/99

 

Таблица 9. Отношение СВОЙСТВО_СОБСТВЕННОСТИ

Номер объекта недвижимости Адрес недвижимости Арендная плата Номер владельца ФИО владельца
ЗП4 Кирова, 150   СО4 Иванова Тамара
ЗП16 Ленина,137   СО93 Ким Л.А.
ЗП36 2 Бульварная, 35   СО93 Ким Л.А.

 

Рассмотрим функциональные зависимости, существующие в отношениях КЛИЕНТ, АРЕНДА, СВОЙСТВО_СОБСТВЕННОСТИ

Отношение КЛИЕНТ

Fd2: Номер клиента → ФИО клиента

Отношение АРЕНДА

FD1: Номер клиента, Номер объекта недвижимости → Начало аренды, Конец аренды

FD5*: Номер клиента, Начало аренды → Номер объекта недвижимости, Конец аренды

FD6*: Номер объекта недвижимости, Начало аренды → Номер клиента, Конец аренды

Отношение СВОЙСТВО_СОБСТВЕННОСТИ

FD3: Номер объекта недвижимости → Адрес недвижимости, Арендная плата, Номер владельца, ФИО владельца

FD4: Номер владельца → ФИО владельца

Все, не входящие в первичный ключ атрибуты отношений КЛИЕНТ и АРЕНДА зависимы только от их первичных ключей, следовательно эти отношения не имеют транзитивных зависимостей и находятся в 3 НФ. (* помечены зависимости, изменившиеся по сравнению с исходными)

Все не входящие в первичный ключ атрибуты отношения СВОЙСТВО_СОБСТВЕННОСТИ функционально зависят от первичного ключа, за исключением атрибута ФИО владельца, который также зависит от атрибута Номер владельца (зависимость FD4). Это типичный пример транзитивной зависимости, которая имеет место при наличии зависимости не входящего в первичный ключ атрибута (ФИО_владельца) от одного или нескольких других атрибутов, также не входящих в первичный ключ (Номер_владельца).

Для преобразования отношения СВОЙСТВО_СОБСТВЕННОСТИ в 3 НФ необходимо удалить указанную транзитивную зависимость путем создания двух новых отношений СВОЙСТВА_АРЕНДЫ и ВЛАДЕЛЕЦ, которые представлены в таблицах:

Таблица 10. Отношение СВОЙСТВА_АРЕНДЫ

Номер объекта недвижимости Адрес недвижимости Арендная плата Номер владельца
ЗП4 Кирова, 150   СО4
ЗП16 Ленина,137   СО93
ЗП36 2 Бульварная, 35   СО93

 

Таблица 11. Отношение ВЛАДЕЛЕЦ

Номер владельца ФИО владельца
СО4 Иванова Тамара
СО93 Ким Л.А.

 

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

Таким образом, исходное отношение КЛИЕНТ_АРЕНДА было разбито на 4 отношения, каждое из которых находится в 3НФ:

КЛИЕНТ (Номер клиента, ФИО клиента)

АРЕНДА(Номер клиента, Номер объекта недвижимости, Начало аренды, Конец аренды)

СВОЙСТВА_АРЕНДЫ (Номер объекта недвижимости, Адрес недвижимости, Арендная плата, Номер владельца)

ВЛАДЕЛЕЦ (Номер владельца, ФИО владельца)

 

Исходное отношение КЛИЕНТ_АРЕНДА может быть восстановлено путем соединения указанных 4-х отношений, за счет использования первичных и внешних ключей. Например, атрибут Номер владельца является первичным ключом отношения ВЛАДЕЛЕЦ, и кроме того, присутствует в отношении СВОЙСТВА_СОБСТВЕННОСТИ как внешний ключ.

Рис. 3. Этапы нормализации отношения Клиент_Аренда







Дата добавления: 2015-10-19; просмотров: 777. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит...

Кран машиниста усл. № 394 – назначение и устройство Кран машиниста условный номер 394 предназначен для управления тормозами поезда...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Гносеологический оптимизм, скептицизм, агностицизм.разновидности агностицизма Позицию Агностицизм защищает и критический реализм. Один из главных представителей этого направления...

Функциональные обязанности медсестры отделения реанимации · Медсестра отделения реанимации обязана осуществлять лечебно-профилактический и гигиенический уход за пациентами...

Определение трудоемкости работ и затрат машинного времени На основании ведомости объемов работ по объекту и норм времени ГЭСН составляется ведомость подсчёта трудоёмкости, затрат машинного времени, потребности в конструкциях, изделиях и материалах (табл...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия