136 Информационные технологии управления
Функциональные зависимости — это особый вид ограничений це-
лостности, поэтому понятие ФЗ является семантическим. Распозна-
вание функциональных зависимостей представляет собой часть про-
цесса выяснения смысла тех или иных данных.
Функциональная взаимозависимость. Если существует функцио-
нальная зависимость вида А—>В и В-^А, то между Аи В имеется взаимно
однозначное соответствие, или функциональная взаимозависимость.
Наличие функциональной взаимозависимости между атрибутами/! и В
обозначается Л<-кВ.
Например, если в некотором отношении существуют атрибуты
«ФИО» и «Номер паспорта», то они являются взаимозависимыми, то
есть одному значению атрибута «ФИО» соответствует только одно
значение атрибута «Номер паспорта» и наоборот. Правда, это возмож-
но, только если исключается полное совпадение фамилий, имен и от-
честв двух людей.
Частичной функциональной зависимостью называется зависимость
неключевого атрибута от части составного ключа.
Полная функциональная зависимость — зависимость неключевого
атрибута от всего составного ключа.
Транзитивная зависимость существует, если для атрибутов А, В, С
выполняются условия А—>В и 5—> С, но обратная зависимость отсутствует.
Между атрибутами может иметь место многозначная зависимость.
В отношении R атрибут В многозначно зависит от атрибута Л, если
каждому значению А соответствует множество значений В, не связан-
ных с другими атрибутами из R.
Многозначные зависимости могут быть «один ко многим» (1:М),
«многие к одному» (М:1) или «многие ко многим» (М:М).
Основной способ определения наличия функциональных зависи-
мостей — внимательный анализ семантики атрибутов. Для каждого
отношения почти всегда существует определенное множество функ-
циональных зависимостей между атрибутами. Причем если в неко-
тором отношении существует одна или несколько функциональных
зависимостей, то из них можно вывести другие функциональные за-
висимости.
Существует 8 основных правил вывода. Они обеспечивают выявле-
ние всех ФЗ. Перечислим эти правила [18].
1. Правило рефлексивности: если множество В является подмноже-
сгвом множества Л, то Л—>Б.
2. Правило дополнения: если А—*В, то АС—>ВС.