Суперключ

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук

В реляційній моделі баз даних суперключ — підмножина атрибутів змінної відношення для якої вірно, що для будь-яких значень цієї змінної не існує двох кортежів (рядків, записів), які містять однакові значення для атрибутів з цієї підмножини. Тотожним визначенням суперключа буде наступне, — множина атрибутів змінної відношення від яких функціонально залежні всі атрибути змінної відношення.

Зауважимо, що якщо підмножина атрибутів K є суперключем змінної відношення R, тоді завжди вірно, що проекція R по атрибутам з K має однакову потужність з R.

Неформально, суперключ це підмножина атрибутів в таблиці чиї значення можуть бути використані для унікальної ідентифікації кортежу. Потенційний ключ — найменша підмножина атрибутів необхідних для ідентифікації кортежу, його також називають найменшим (мінімальним) суперключем. Наприклад, дана схема відношення Працівникі з атрибутами працівникІд, ім'я, посада і відділІд, ми можемо використати працівникІд в сполученні з будь-яким або всімома іншими атрибутами цієї таблиці для унікальної ідентифікації кортежу в таблиці. Прикладами суперключів в цій таблиці будуть {працівникІд, ім'я}, {працівникІд, ім'я, посада}, і {працівникІд, ім'я, посада, відділІд}.

В дійсності, ми не потребуємо всі ці значення для ідентифікування конкретного кортежу. Ми потребуємо лише, в нашому прикладі, підмножину {працівникІд}. Це найменший суперключ – тобто, найменша підмножина атрибутів, які можна використати для ідентифікації конкретного кортежу. Тож, працівникІд це потенційний ключ.

Приклад[ред.ред. код]

Англійські монархи
Ім'я Номер Династія
Едвард II Плантагенет
Едвард III Плантагенет
Річард III Плантагенет
Генрі IV Ланкастер

В цьому прикладі, можливими суперключами є:

  • {Ім'я, Номер} (потенційний ключ)
  • {Ім'я, Номер, Династія}

Посилання[ред.ред. код]