Первинний ключ — атрибут або набір атрибутів, який однозначно ідентифікує кортеж даного відношення. Первинний ключ обов'язково унікальний.
У реляційних базах даних первинний ключ обирають серед одного з потенційних ключів або ж генерують сурогатний ключ.
Первинний ключ у мові SQL У мові SQL первинний ключ описують обмеженням PRIMARY KEY, яке задається в операторах DDL (Create, Alter). Наприклад,
Під час створення первинного ключа рушій бази даних зазвичай перевіряє метадані та дані відповідних стовпчиків () щодо їх відповідності таким правилам: Стовпчики не повинні допускати значень NULL Стовпчики первинного ключа неявно набувають обмеження NOT NULLУ деяких реалізаціях перевірка на неприпустимість значень NULL не виконується. Наприклад, в SQLite в полях первинного ключа дозволено порожні значення (NULL). Це зумовлено сумісністю з попередніми реалізаціями, у яких обмеження не було.. Розріджений стовпчик можна використовувати як частину первинного ключа, оскільки вони мають дозволяти значення NULL. Якщо первинний ключ додається до вже наявної таблиці, то набір значень у визначених стовпчиках має бути унікальним (не містити повторів) Якщо повтори трапляються, то рушій бази даних не створює обмеження та повертає помилку.
Приклади застосування первинного ключа Приклад створення таблиці мовою SQL з обмеженням первинного ключа:
Інший приклад:
Для створення обмеження первинного ключа в колонці «Id_Car», коли таблиця «Car» вже існує, використовують наступний сценарій мовою SQL з використанням оператора ALTER TABLE:
Щоб розподілити обмеження первинного ключа на декілька колонок, доцільно використовувати такий синтаксис SQL:
Для видалення обмеження первинного ключа використовують наступний SQL:
Примітки
Джерела