Супер ключ

редактировать
Эта статья посвящена термину проектирования базы данных. Информацию о кнопке клавиатуры см. В разделе Супер-клавиша (кнопка клавиатуры).

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

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

Например, в схеме сотрудника с атрибутами employeeID, name, job и departmentID, если значения employeeID уникальны, то employeeID в сочетании с любым или всеми другими атрибутами может однозначно идентифицировать кортежи в таблице. Каждая комбинация {employeeID}, {employeeID, name}, {employeeID, name, job} и т. Д. Является суперключом. {employeeID} - это ключ-кандидат, ни одно из его атрибутов не является суперключом. {employeeID, name, job, departmentID} - это простой суперключ.

Если набор атрибутов К являются суперключи из соотношения R, то в любой момент времени это тот случай, когда проекция из R над K имеет ту же мощность, как R сами.

СОДЕРЖАНИЕ
  • 1 Пример
  • 2 См. Также
  • 3 ссылки
  • 4 Дальнейшее чтение
  • 5 Внешние ссылки
Пример
Английские монархи
Имя монарха Число монарха Королевский дом
Эдвард II Плантагенет
Эдвард III Плантагенет
Ричард III Плантагенет
Генри IV Ланкастер

Сначала перечислите все наборы атрибутов:

• {Имя монарха}  
• {Число монарха}  
• {Королевский дом}
• {Имя монарха, Номер монарха}
• {Имя монарха, Королевский дом}
• {Номер монарха, Королевский дом}
• {Имя монарха, Номер монарха, Королевский дом}

Во-вторых, удалите все наборы, которые не соответствуют требованиям суперключа. Например, {Имя монарха, Королевский дом} не может быть суперключом, потому что для одних и тех же значений атрибутов (Эдвард, Плантагенет) существуют два разных кортежа:

  • (Эдвард, II, Плантагенет)
  • (Эдвард III, Плантагенет)

Наконец, после исключения оставшиеся наборы атрибутов являются единственными возможными суперключами в этом примере:

  • {Имя монарха, номер монарха} (Ключ кандидата)
  • {Имя монарха, номер монарха, Королевский дом}

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

Смотрите также
Рекомендации
дальнейшее чтение
Внешние ссылки
Последняя правка сделана 2023-03-29 08:40:13
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте