Рассмотрим основные виды зависимостей между атрибутами отношений: функциональные, многозначные и транзитивные.
Понятие функциональной зависимости является базовым, так как на его основе формулируются определения всех остальных видов зависимостей.
Определение функциональной зависимости. Атрибут В функционально зависит от атрибута А, если каждому значению А соответствует в точности одно значение В. Математически функциональная зависимость В от А обозначается записью А->В. Это означает, что во всех кортежах с одинаковым значением атрибута А атрибут В будет иметь также одно и то же значение. Отметим, что А и В могут быть составными - состоять из двух и более атрибутов.
В отношении на рис. 19.7 можно выделить функциональные зависимости между атрибутами ФИО-Жаф, ФИО->Должн, Должн->0клад, ФИО->Предмет. В отношении на рис. 19.7 ключ является составным и состоит из атрибутов ФИО, Предмет, Группа. Если отношение находится в первой нормальной форме, то все неключевые атрибуты функционально зависят от ключа с различной степенью зависимости.
Частичной зависимостью называется зависимость неключевого атрибута от части составного ключа. В рассматриваемом отношении атрибут Должн находится в функциональной зависимости от атрибута ФИО, являющегося частью ключа. Тем самым атрибут Должн находится в частичной зависимости от ключа отношения.
238
Альтернативным вариантом является полная функциональная зависимость неключевого атрибута от всего составного ключа. В нашем примере атрибут ВидЗан находится в полной функциональной зависимости от составного ключа.
Атрибут С зависит от атрибута А транзитивно, если для атрибутов А, В, С выполняются условия А -> В и В -> С, но обратная зависимость отсутствует. В отношении на рис. 19.7 транзитивной зависимостью связаны атрибуты:
ФИО ->Должн -> Оклад
Между атрибутами может иметь место многозначная зависимость.
Определение многозначной зависимости. В отношении R атрибут В многозначно зависит от атрибута Л, если каждому значению А соответствует множество значений В, не связанных с другими атрибутами из R.
Многозначные зависимости могут быть "один ко многим" (1:М), "многие к одному" (М:1) или "многие ко многим" (М:М), обозначаемые соответственно: А-> > В, А < >В.
Например, пусть преподаватель ведет несколько предметов, а каждый предмет может вестись несколькими преподавателями, тогда имеет место зависимость ФИО"-"Предмет.