![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Если в отношении существует несколько функциональных зависимостей, то каждый атрибут или набор атрибутов, от которого зависит другой атрибут, называется детерминантом отношения.
Для функциональных зависимостей как фундаментальной основы проекта БД были проведены исследования, позволяющие избежать избыточного их представления. Ряд зависимостей могут быть выведены из других путем применения правил, названных аксиомами Армстронга, по имени исследователя, впервые сформулировавшего их.
Это три основных аксиомы:
Рефлективность: если X является подмножеством Y, то YàX
Пополнение: если XàY, то ХСàYС
Транзитивность: если XàY и YàZ, то XàZ.
Доказано, что данные правила являются полными и исчерпывающими, то есть, применяя их, из заданного множества функциональных зависимостей можно вывести все возможные функциональные зависимости.
Существует несколько других правил вывода, которые следуют из аксиом Армстронга.
Правило самоопределения. X à Х.
Правило объединения. Если X à Y и X à Z, то X à Y È Z.
Правило псевдотранзитивности. Если X à Y и W È Y à Z, то X È W à Z.
Правило композиции. Если X à Y и Z à W, то X È W à Y È W.
Правило декомпозиции. Если X à Y и Z входит в Y, то X à Z.
Множество всех возможных функциональных зависимостей, выводимое из заданного набора исходных функциональных зависимостей, называется его замыканием.
При выполнении эквивалентных преобразований сохраняется множество исходных фундаментальных функциональных зависимостей между атрибутами отношений.
Функциональные зависимости определяют не текущее состояние БД, а все возможные ее состояния, то есть они отражают те связи между атрибутами, которые присущи реальному объекту, который моделируется с помощью БД. Поэтому определить функциональные зависимости по текущему состоянию БД можно только в том случае, если экземпляр БД содержит абсолютно полную информацию (то есть никаких добавлений и модификации БД не предполагается). В реальной жизни это требование невыполнимо, поэтому набор функциональных зависимостей задает разработчик, системный аналитик, исходя из глубокого системного анализа ПО.
Дата публикования: 2015-09-17; Прочитано: 2241 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!