Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Обзор процесса нормализации



Рассмотрим пример ненормализованных отношений, приводимых к НФБК.

Ненорм. отношения создаются на основе анализа предметной области и требований пользователей, которые предъявляется к данным.

>: Компания выполняет операции с объектами недвижимости по поручению владельца. Как часть этой деятельности, предусматривается проверка объекта недвижимости. Эту проверку выполняют сотрудники компании. Для проведения проверки сотрудникам предоставляется АВТО. В течение дня 1 авто может предоставлятся разным сотрудникам. Каждый сотрудник может выполнять в день проверку нескольких объектов недвижимости. Каждый объект в день может проверятся только 1 раз.

Ненормализованное отношение = Property_Inspection

Потенц. ключ: (Property_No, IDate)

(Staff_No, IDate, ITime)

(Car_Reg, IDate, ITime)

Преобразование к 1НФ будет выполнятся добавлением новой строки в отношение, то есть данные об объекте PG4 будут представлены 3-мя строками в таблице, PG16 – 2-мя. Проанализировав отношение 1НФ, сделаем вывод, что оно содержит избыточные данные, оно подвержено аномалиям обновления. Поэтому необходимо это отношение преобразовать ко 2НФ.

Функциональные зависимости:

fd1: Property_No, IDate ITime, Comment, Staff_No, Sname, Car_Reg–превичн. ключ.

fd2: Property_No  PAdress – частичная зависимость.

fd3: Staff_No  Sname – транзитивная зависимость.

fd4: Staff_No, IDate Car_Reg – полная зав-ть.

fd5: Car_Reg, IDate, ITime Property_No, PAdress, Comment, Staff_No, Sname – полная зав-ть для потенциального ключа.

fd6: Staff_No, IDate, ITime Property_No, PAdress, Comment, Staff_No, Sname

Приведение ко 2 НФ – устанавливает частичные зависимости.

Это выполн. создание 2-х новых отношений:

Prop(Property_No, PAdress)

Prop_Inspection (Property_No, IDate, ITime, Comment, Staff_No, Sname, Car_Reg)

Приведение к 3 НФ – устанавливает транзитивную зависимость.

Чтобы установить транзитивную зависимость (fd3) необходимо зависимые атрибуты вместе с копией детерминанта переносить в новое отношение. Prop_Inspection преобразовывается в отношение:

Staff (Staff_No, Sname)

Prop_Inspection (Property_No, IDate, ITime, Comment, Staff_No, Sname, Car_Reg)

Проанализировав полученные отношения на предмет удовлетворения НФБК. Отношение находится в этой форме, если кажд. детермин. отнош. явл. потенциальным ключом. Преобразуем к НФБК: первых 2 удовлетворяет так как каждый детерминант является потенциальным ключом.

Аналогично 3-е отношение:

Property_No, IDate ITime, Comment, Staff_No, Sname, Car_Reg

Staff_No, IDate Car_Reg

Staff_No, IDate, ITime Property_No, Comment

Анализируем 2-ю функциональную зависимость. Детермин. отнош. не явл. потенц. ключом, т.е. отнош. будет страдать аномал. обновл.. Например, изменился № авто, необходимо будет вносить изменения сразу в нескольких строчках отнош., иначе данные будут противоречивыми. Поэтому отношение Prop_Inspection разбивается на 2 новых отношения, это отношение:

Сar(Staff_No, IDate, Car_Reg)

Inspection (Property_No, IDate, ITime, Comment, Staff_No)

Эти отношения удовлетворяют НФБК.

При нормализации отношений мы пользовались декомпозиц. отношениям без потерь(неаддитивной композиции). НФБК позволяет установить аномалии, которые вызваны fd. Помимо fd, в ходе аномалий выявлен еще 1 тип зависимости – многозначная зависимость.





Дата публикования: 2014-11-29; Прочитано: 278 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.011 с)...