Пусть задана переменная отношения R, и X и Y являются произвольными подмножествами заголовка R («составными» атрибутами).
В значении переменной отношения R атрибут Y функционально зависит от атрибута X в том и только в том случае, если каждому значению X соответствует в точности одно значение Y. В этом случае говорят также, что атрибут X функционально определяет атрибут Y (X является детерминантом (определителем) для Y, а Y является зависимым от X). Будем обозначать это как R.X
R.Y.Для примера будем использовать отношение СЛУЖАЩИЕ_ПРОЕКТЫ {СЛУ_НОМ, СЛУ_ИМЯ, СЛУ_ЗАРП, ПРО_НОМ, ПРОЕКТ_РУК} (). Очевидно, что если СЛУ_НОМ является первичным ключом отношения СЛУЖАЩИЕ, то для этого отношения справедлива функциональная зависимость (Functional Dependency – FD) СЛУ_НОМ
СЛУ_ИМЯ.На самом деле, для тела отношения СЛУЖАЩИЕ_ПРОЕКТЫ в том виде, в котором оно показано на , выполняются еще и следующие FD (1):
Рис. 7.1. Пример возможного тела отношения СЛУЖАЩИЕ_ПРОЕКТЫ
СЛУ_НОМ
СЛУ_ИМЯ СЛУ_НОМСЛУ_ЗАРП СЛУ_НОМПРО_НОМ СЛУ_НОМПРОЕКТ_РУК {СЛУ_НОМ, СЛУ_ИМЯ}СЛУ_ЗАРП {СЛУ_НОМ, СЛУ_ИМЯ}ПРО_НОМ {СЛУ_НОМ, СЛУ_ИМЯ}{СЛУ_ЗАРП, ПРО_НОМ} … ПРО_НОМПРОЕКТ_РУК и т.д.Поскольку имена всех служащих различны, то выполняются и такие FD (2):
СЛУ_ИМЯ
СЛУ_НОМ СЛУ_ИМЯСЛУ_ЗАРП СЛУ_ИМЯПРО_НОМ и т.д.Более того, для примера на выполняется и FD (3):
СЛУ_ЗАРП
ПРО_НОМОднако заметим, что природа FD группы (1) отличается от природы FD групп (2) и (3). Логично предположить, что идентификационные номера служащих должны быть всегда различны, а у каждого проекта имеется только один руководитель. Поэтому FD группы (1) должны быть верны для любого допустимого значения переменной отношения СЛУЖАЩИЕ_ПРОЕКТЫ и могут рассматриваться как инварианты, или ограничения целостности этой переменной отношения.
FD группы (2) базируются на менее естественном предположении о том, что имена всех служащих различны. Это соответствует действительности для примера из , но возможно, что с течением времени FD группы (2) не будут выполняться для какого-либо значения переменной отношения СЛУЖАЩИЕ_ПРОЕКТЫ.