![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Пример приведения отношения ко второй нормальной форме
Пусть в следующем отношении первичный ключ образует пара атрибутов { Сотрудник, Должность }:
Сотрудник | Должность | Зарплата | Наличие компьютера |
Гришин | Кладовщик | Нет | |
Васильев | Программист | Есть | |
Иванов | Кладовщик | Нет |
Зарплату сотруднику каждый начальник устанавливает сам (хотя её границы зависят от должности). Наличие же компьютера у сотрудника зависит только от должности, то есть зависимость от первичного ключа неполная.
В результате приведения к 2NF получаются два отношения:
Сотрудник | Должность | Зарплата |
Гришин | Кладовщик | |
Васильев | Программист | |
Иванов | Кладовщик |
Должность | Наличие компьютера |
Кладовщик | Нет |
Программист | Есть |
Функциона́льная зави́симость — концепция, лежащая в основе многих вопросов, связанных с реляционными базами данных, включая, в частности, их проектирование. Математически представляет бинарное отношение между множествами атрибутов данного отношения и является, по сути, связью типа «один ко многим». Их использование обусловлено тем, что они позволяют формально и строго решить многие проблемы. Определения
[ править ] Функциональная зависимость
Пусть дано отношение со схемой (заголовком)
,
и
— некоторые подмножества множества атрибутов отношения
. Множество
функционально зависит от
тогда и только тогда, когда каждое значение множества
связано в точности с одним значением множества
. Другими словами, если два кортежа совпадают по атрибутам
, то они совпадают и по атрибутам
.
В этом случае — детерминант,
— зависимая часть.
Функциональная зависимость называется тривиальной, если зависимая часть является подмножеством детерминанта.
[ править ] Замыкание множества зависимостей
Одни функциональные зависимости могут подразумевать другие функциональные зависимости. Например,
.
Множество всех функциональных зависимостей, которые подразумеваются данным множеством функциональных зависимостей
называется замыканиеммножества
.
[ править ] Замыкание множества атрибутов
Пусть — некоторое множество атрибутов отношения
, а
— множество функциональных зависимостей этого отношения. Замыканием
множества атрибутов
в пределах
называется такое множество всех атрибутов
отношения
, что функциональная зависимость
является членом замыкания
.
[ править ] Неприводимые множества зависимостей
Пусть и
— некоторые множества функциональных зависимостей.
Если любая функциональная зависимость из входит и в
, то
называют покрытием множества функциональных зависимостей
.
Если — покрытие для
, а
— для
(то есть
), то такие множества называются эквивалентными.
Множество функциональных зависимостей называется неприводимым тогда и только тогда, когда выполняются следующие условия:
В каждой функциональной зависимости зависимая часть содержит только один элемент;
Детерминант каждой функциональной зависимости является неприводимым (ни один атрибут не может быть удален из детерминанта без изменения замыкания );
Ни одну функциональную зависимость из нельзя исключить без изменения замыкания
.
Для любого множества функциональных зависимостей существует по крайней мере одно эквивалентное множество, которое является неприводимым. Такое эквивалентное множество называется неприводимым покрытием.
Дата публикования: 2015-10-09; Прочитано: 254 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!