Що таке первинний ключ?
Обмеження первинного ключа - це стовпець або група стовпців у таблиці, яка однозначно ідентифікує кожен рядок у цій таблиці. Первинний ключ не може бути дублікатом, тобто одне і те ж значення не може відображатися більше ніж один раз у таблиці.
У таблиці має бути більше одного первинного ключа. Первинний ключ можна визначити на рівні стовпця або таблиці. Якщо ви створюєте складений первинний ключ, його слід визначити на рівні таблиці.
У цьому підручнику ви дізнаєтесь:
- Що таке первинний ключ?
- Що таке унікальний ключ?
- Навіщо використовувати первинний ключ?
- Навіщо використовувати унікальний ключ?
- Особливості первинного ключа
- Особливості унікального ключа
- Приклад створення первинного ключа
- Приклад створення унікального ключа
- Різниця між первинним та унікальним ключами
- Що краще?
Що таке унікальний ключ?
Унікальний ключ - це група з одного або декількох полів або стовпців таблиці, які однозначно ідентифікують запис бази даних.
Унікальний ключ такий самий, як і первинний ключ, але він може приймати одне нульове значення для стовпця таблиці. Він також не може містити однакових значень. На унікальні обмеження посилається зовнішній ключ інших таблиць.
КЛЮЧОВІ ВІДМІННОСТІ
- У таблиці може бути один первинний ключ, тоді як у таблиці може бути кілька унікальних ключів.
- Призначення первинного ключа полягає у забезпеченні цілісності сутності, з іншого боку, призначення унікального ключа полягає у застосуванні унікальних даних.
- У первинному ключі індекс за замовчуванням кластеризований, тоді як в унікальному ключі індекс за замовчуванням не кластеризований
- Первинний ключ не допускає нульових стовпців, тоді як унікальний дозволяє нульові стовпці.
- У первинному ключі повторювані ключі заборонені, тоді як в унікальному ключі, якщо одна або кілька частин ключа є нульовими, то дозволяються повторювані ключі.
Навіщо використовувати первинний ключ?
Ось важливі причини використання первинного ключа:
- Головною метою первинного ключа є ідентифікація кожного запису в таблиці бази даних.
- Ви можете використовувати первинний ключ, коли не дозволяєте комусь вводити нульові значення.
- Якщо ви видалите або оновите запис, буде виконано вказану вами дію для забезпечення цілісності даних бази даних.
- Виконайте операцію обмеження, щоб відхилити операцію видалення або оновлення для батьківської таблиці.
- Дані організовуються в послідовності кластерного індексу щоразу, коли ви фізично упорядковуєте таблицю СУБД.
Навіщо використовувати унікальний ключ?
Ось важливі причини використання унікального ключа:
- Призначення унікального ключа полягає в тому, щоб переконатися, що інформація в стовпці для кожного запису таблиці є унікальною.
- Коли ви дозволяєте користувачеві вводити нульове значення.
- Унікальний ключ використовується, оскільки за замовчуванням створює некластеризований індекс.
- Унікальний ключ можна використовувати, коли вам потрібно зберегти нульові значення в стовпці.
- Коли одне або декілька полів / стовпців таблиці, які однозначно ідентифікують запис у таблиці бази даних.
Особливості первинного ключа
Ось важливі особливості первинного ключа:
- Первинний ключ реалізує цілісність сутності таблиці.
- У таблиці можна зберегти лише одне первинне.
- Первинний ключ містить один або кілька стовпців таблиці.
- Стовпці визначаються як не нульові.
Особливості унікального ключа
Ось важливі особливості унікального ключа:
- У таблиці можна визначити більше одного унікального ключа.
- За замовчуванням унікальні ключі містяться в некластерних унікальних індексах.
- Він складається з одного або декількох стовпців таблиці.
- Стовпець таблиці може бути нульовим, але бажано лише одне нульове значення для кожного стовпця.
- На унікальне обмеження можна легко посилатися за допомогою обмеження зовнішнього ключа.
Приклад створення первинного ключа
Наступний приклад описує, що існує таблиця, що називається студент. Він містить п’ять атрибутів, 1) StudID, 2) No рулону, 3) Ім'я, 4) Прізвище та 5) Електронна пошта.
Атрибут Roll No ніколи не може містити дублікат або значення null. Це тому, що кожен студент, який навчається в університеті, може мати унікальний номер. Ви можете легко ідентифікувати кожен рядок таблиці з номером студентського списку. Тож це розглядається як первинний ключ.
Приклад створення унікального ключа
Розглянемо одну і ту ж таблицю студентів з атрибутами: 1) StudID, 2) No рулону, 3) Ім'я, 4) Прізвище та 5) Електронна пошта.
Студентський ідентифікатор може мати унікальне обмеження, де записи у стовпці Ідентифікаційного номера студента можуть бути унікальними, оскільки кожен студент університету повинен мати унікальний ідентифікаційний номер. У випадку, якщо студент змінює університет, у такому випадку він чи вона не матиме жодного посвідчення особи. Запис може мати нульове значення, оскільки в унікальному обмеженні ключа дозволено лише одне нуль.
Різниця між первинним та унікальним ключами
Ось важливі відмінності між первинним та унікальним ключами:
Первинний ключ | Унікальний ключ |
У таблиці може бути один первинний ключ | У таблиці може бути кілька унікальних ключів |
Він не допускає нульових стовпців. | Це дозволяє нульові стовпці. |
Індекс за замовчуванням кластеризований | Індекс за замовчуванням не кластеризований |
Метою первинного ключа є забезпечення цілісності сутності. | Призначення унікального ключа полягає у застосуванні унікальних даних. |
Первинний ключ можна створити за допомогою синтаксису:
CREATE TABLE Employee(ID int PRIMARY KEY,Name varchar(255),City varchar(150)) | Унікальний ключ можна створити за допомогою синтаксису:
CREATE TABLE Employee(ID int UNIQUE.Name varchar(255) NOT NULL. City varchar(150)) |
Саме обмеження SQL дозволяє однозначно ідентифікувати кожен запис або рядок у таблиці бази даних. | Саме обмеження SQL не дозволяє присвоювати одне і те ж значення двом ізольованим записам у таблиці бази даних. |
У первинному ключі повторювані ключі заборонені. | В унікальному ключі, якщо одна або кілька частин ключа є нульовими, допускаються дублікати ключів. |
Що краще?
- Унікальний ключ краще, якщо у вас є стовпці, які, на вашу думку, не повинні містити дублювання. Це стає хорошим способом перевірити перевірку даних.
- Первинний ключ ідеально підходить, коли ви не можете зберегти нуль у таблиці. Він також може використовуватися, коли у вас є зовнішній ключ в іншій таблиці для створення відносин.