В отношении R атрибут Y функционально зависит от атрибута X (X и Y могут быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y: R.X (r) R.Y.
ГРАФИК_ПОЛЕТОВ
Пилот | Рейс | Дата_вылета | Время_вылета |
Иванов | 8.07 | 10:20 | |
Иванов | 9.07 | 13:30 | |
Исаев | 7.07 | 6:00 | |
Исаев | 11.07 | 10:20 | |
Исаев | 10.07 | 19:30 | |
Петров | 12.07 | 10:20 | |
Петров | 11.07 | 13:30 | |
Фролов | 8.07 | 6:00 | |
Фролов | 12.07 | 6:00 | |
Фролов | 14.07 | 13:30 |
Известно, что:
-каждому рейсу соответствует определенное время вылета;
-для каждого пилота, даты и времени вылета возможен только один рейс;
-на определенный день и рейс назначается определенный пилот.
Следовательно:
"Время_вылета" функционально зависим от "Рейс": "Рейс" "Время_{} вылета";
"Рейс" функционально зависим от {"Пилот", "Дата_вылета", "Время_вылета"}: {"Пилот", "Дата_вылета", "Время_вылета"} "Рейс";
"Пилот" функционально зависим от {"Рейс", "Дата_вылета"}: {"Рейс", "Дата_вылета"} "Пилот".
|
|
Функциональные зависимости являются ограничениями целостности и определяют семантику хранящихся в БД данных. При каждом обновлении СУБД должна проверять их соблюдение. Следовательно, наличие большого количества функциональных зависимостей нежелательно, иначе происходит замедление работы. Для упрощения задачи необходимо сократить набор функциональных зависимостей до минимально необходимого