Справочник от Автор24
Найди эксперта для помощи в учебе
Найти эксперта
+2

Функциональные зависимости

Функциональная зависимость

Реляционная БД содержит семантическую и структурную информацию. Структурой БД определяет число и вид включенных в нее отношений и связи типа «один-ко-многим», которые существуют между кортежами этих отношений. Семантической частью описывается множество функциональных зависимостей, которые существуют между атрибутами этих отношений.

Определение 1

Если имеются два атрибута А и В какого-либо отношения, то говорят, что В функционально зависит от А, если в каждый момент времени каждому значению А соответствует лишь одно значение В.

Функциональную зависимость (ФЗ) обозначают $А \to В$. Обратим внимание, что А и В могут быть не только единичными атрибутами, но и группами, которые составлены из нескольких атрибутов одного отношения.

Говорят, что функциональные зависимости являются связями типа «один-ко-многим», которые существуют внутри отношения.

С помощью функциональных зависимостей можно накладывать на реляционную схему дополнительные ограничения. Основной идеей является то, что значением одного атрибута в кортеже однозначно определяется значение другого атрибута.

К примеру, в каждом кортеже на рисунке 1 Фамилия однозначно определяется № работника; Специальность однозначно определяется № работника. Данные функциональные зависимости записывают в виде:

ФЗ: № работника $\to$ фамилия, ФЗ: № работника $\to$ специальность.

БД «Работник». Автор24 — интернет-биржа заказчиков и авторов

Определение 2

Функциональная зависимость значением одного атрибута в кортеже однозначно определяет значение другого атрибута в кортеже.

«Функциональные зависимости» 👇
Помощь эксперта по теме работы
Найти эксперта
Решение задач от ИИ за 2 минуты
Решить задачу
Найди решение своей задачи среди 1 000 000 ответов
Найти

Другими словами функциональная зависимость определяется следующим образом:

Определение 3

Если в таблице R существуют атрибуты А и В, то запись

ФЗ : $A \to В$

значит, что при одном и том же значении атрибута А двух кортежей в таблице R они будут иметь одно и то же значение атрибута В.

Знак $\to$ читают «функционально определяет».

Данное определение можно применить также в случае, когда А и В являются множеством столбцов, а не просто отдельными столбцами.

Определение 4

Детерминантом называют атрибут в левой части функциональной зависимости, т.к. его значением однозначно определяется значение атрибута в правой части.

Детерминантом всегда является ключ таблицы, т.к. его значением однозначно определяется значение каждого атрибута таблицы.

Типы функциональных зависимостей

Не все функциональные зависимости являются желательными.

Определение 5

Избыточной функциональной зависимостью называют зависимость, которая заключает в себе такую информацию, которую можно получить на основе других зависимостей, содержащихся в базе данных.

Схема базы данных без избыточных функциональных зависимостей считается корректной. В обратном случае необходимо прибегнуть к процедуре разложения (декомпозиции) существующего множества отношений. При этом множество, которое создается, будет содержать большее количество отношений, являющиеся проекциями отношений исходного множества.

Определение 6

Процесс замены этой совокупности отношений другой схемой с устраненными избыточными функциональными зависимостями называют нормализацией.

Существует еще несколько видов функциональной зависимости.

Транзитивная функциональная зависимость. Пусть А, В, С – атрибуты какого-либо отношения. При этом $А \to В$ и $В \to С$ и отсутствует обратное соответствие, то есть $С \not \to В$ и $В \not \to А$. В таком случае С транзитивно зависит от А.

Многозначная зависимость. Пусть А, В, С – атрибуты некоторого отношения R. В данном отношении R существует многозначная зависимость $R.А \to R.В$ лишь в том случае, когда множество значений В, которое соответствует паре значений А и С, зависит только от А и не зависит от С.

Воспользуйся нейросетью от Автор24
Не понимаешь, как писать работу?
Попробовать ИИ
Дата написания статьи: 19.09.2016
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач
Все самое важное и интересное в Telegram

Все сервисы Справочника в твоем телефоне! Просто напиши Боту, что ты ищешь и он быстро найдет нужную статью, лекцию или пособие для тебя!

Перейти в Telegram Bot