Skip to content

Instantly share code, notes, and snippets.

@kroer
Last active November 24, 2017 05:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kroer/9e51c49e712c5307e9816515802ae7af to your computer and use it in GitHub Desktop.
Save kroer/9e51c49e712c5307e9816515802ae7af to your computer and use it in GitHub Desktop.

Кортеж - это строка отношения, которая содержит по одному компоненту для каждого атрибута отношения.

Функцциональной зависимость (FD) для отношения R - это утверждение следующего вида "Если два кортежа отношения R совпадают в атрибутах A1, A2 ... An (т.е. кортежи обладают одинаковыми значениями компонентов для каждого из названных атрибутов) то они должны совпадать и в другом атрибуте B".

Формально такая FD записывается A1 A2 ... An -> B и свидетельствует, что "A1 A2 ... An функционально обусловливают B"

Говорят, что множество вида {A1 A2 ... An}, состоящее из одного или нескольких атрибутов, является ключом отношения R, если выполняются следующие условия:

  1. атрибуты A1 A2 ... An функционально обусловливают все остальные атрибуты отношения; ситуация, когда два различных кортежа R совпадают во всех атрибутах A1 A2 ... An, невозможна;
  2. ни одно из допустимых подмножеств множества {A1 A2 ... An} атрибутов не является функциональным обоснованием всех остальных атрибутов отношения R; т.е. ключ минимален
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment