Різниця між первинним ключем і унікальним ключем
Ключова різниця між первинним ключем і унікальним ключем
- У таблиці може бути один первинний ключ, а в таблиці може бути декілька унікальних ключів.
- Призначення первинного ключа полягає в забезпеченні цілісності сутності; з іншого боку, мета унікального ключа полягає в забезпеченні унікальних даних.
- У первинних ключах індекс за замовчуванням є кластеризованим, тоді як в унікальних ключах індекс за замовчуванням не кластеризований
- Первинний ключ не допускає нульових стовпців, тоді як унікальний ключ дозволяє нульові стовпці.
- У первинному ключі дублікати ключів не допускаються, тоді як в унікальному ключі, якщо одна або кілька частин ключа нульові, то дублікати ключів допускаються.
Тут я проаналізував різницю між первинним ключем і унікальним ключем і всебічно оцінив їхні плюси та мінуси.
Що таке первинний ключ?
Обмеження первинного ключа – це стовпець або група стовпців у таблиці, які однозначно ідентифікують кожен рядок у цій таблиці. Первинний ключ не може бути дублікатом, тобто одне й те саме значення не може з’являтися в таблиці більше одного разу.
Таблиця може мати лише один первинний ключ. Основний ключ можна визначити на рівні стовпця або таблиці. Якщо ви створюєте складений первинний ключ, його слід визначити на рівні таблиці.
Приклад створення первинного ключа
У наступному прикладі описано, що існує таблиця під назвою student. Він містить п’ять атрибутів: 1) StudID, 2) Номер списку, 3) Ім’я, 4) Прізвище та 5) Електронна адреса.
Атрибут Roll No ніколи не може містити повторюване або нульове значення. Це тому, що кожен студент, який навчається в університеті, може мати унікальний номер. Ви можете легко ідентифікувати кожен рядок таблиці за номером учня. Отже, він вважається первинним ключем.
Особливості первинного ключа
Виходячи з моїх спостережень, ось важливі особливості первинного ключа:
- Первинний ключ реалізує цілісність сутності таблиці.
- У таблиці можна залишити лише один первинний.
- Первинний ключ містить один або кілька стовпців таблиці.
- Стовпці визначені як ненульові.
Навіщо використовувати первинний ключ?
Розмірковуючи про свої практичні знання, ось важливі причини використовувати первинний ключ:
- Основна мета первинного ключа — ідентифікувати кожен запис у таблиці бази даних.
- Ви можете використовувати первинний ключ, коли ви не дозволяєте комусь вводити нульові значення.
- Якщо ви видалите або оновите запис, буде виконано вказану вами дію для забезпечення цілісності даних бази даних.
- Виконайте операцію обмеження, щоб відхилити операцію видалення або оновлення для батьківської таблиці.
- Дані організовуються в послідовності кластеризованих індексів щоразу, коли ви фізично організовуєте таблицю СУБД.
Що таке унікальний ключ?
Унікальний ключ — це група з одного або кількох полів або стовпців у таблиці, які унікально ідентифікують запис бази даних.
Унікальний ключ такий самий, як і первинний ключ, але він може приймати одне нульове значення для стовпця таблиці. Він також не може містити однакові значення. На унікальні обмеження посилається зовнішній ключ інших таблиць.
Приклад створення унікального ключа
Розглянемо ту саму таблицю студентів із такими атрибутами: 1) StudID, 2) Номер списку, 3) Ім’я, 4) Прізвище та 5) Електронна адреса.
Stud ID може мати унікальне обмеження, коли записи в стовпці Stud ID можуть бути унікальними, оскільки кожен студент в університеті повинен мати унікальний ідентифікаційний номер. Якщо студент змінює університет, у нього не буде студентського квитка. Запис може мати нульове значення, оскільки в обмеженні унікального ключа допускається лише один нуль.
Особливості унікального ключа
Тут я опишу важливі особливості унікального ключа:
- У таблиці можна визначити більше одного унікального ключа.
- За замовчуванням унікальні ключі знаходяться в некластеризованих унікальних індексах.
- Він складається з одного або кількох стовпців таблиці.
- Стовпець таблиці може бути нульовим, але бажано лише один нуль на стовпець.
- На унікальне обмеження можна легко посилатися за допомогою обмеження зовнішнього ключа.
Навіщо використовувати унікальний ключ?
Ось важливі причини, чому я рекомендую використовувати унікальний ключ:
- Мета унікального ключа полягає в тому, щоб переконатися, що інформація в стовпці для кожного запису таблиці є унікальною.
- Коли ви дозволяєте користувачеві вводити нульове значення.
- Унікальний ключ використовується, оскільки за замовчуванням створюється некластерний індекс.
- Унікальний ключ можна використовувати, коли вам потрібно зберегти нульові значення в стовпці.
- Коли одне або більше ніж одне поле/стовпці таблиці однозначно ідентифікують запис у таблиці бази даних.
Відмінності між первинним ключем і унікальним ключем
У моєму аналізі ось основні відмінності між первинним ключем і унікальним ключем:
Основа порівняння | Первинний ключ | Унікальний ключ |
---|---|---|
Номер ключа | У таблиці може бути один первинний ключ | У таблиці може бути кілька унікальних ключів |
NULL | Він не допускає нульових стовпців. | Він допускає нульові стовпці. |
індекс | Індекс за замовчуванням кластерний | Індекс за замовчуванням не кластеризований |
Мета | Призначення первинного ключа полягає в забезпеченні цілісності сутності. | Метою унікального ключа є забезпечення унікальних даних. |
Скористайтесь | Це обмеження SQL, яке дозволяє вам унікально ідентифікувати кожен запис або рядок у таблиці бази даних. | Це обмеження SQL, яке не дозволяє призначати одне й те саме значення двом ізольованим записам у таблиці бази даних. |
Модифікація значення | У первинному ключі дублікати ключів не допускаються. | В унікальному ключі, якщо одна або кілька частин ключа є нульовими, то допускаються повторювані ключі. |
синтаксис |
Первинний ключ можна створити за допомогою синтаксису: 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) ) |
Ви також можете дослідити: Різниця між первинним ключем і зовнішнім ключем
Як вибрати між первинним та унікальним ключем
- Унікальні ключі краще, коли у нас є стовпці, які, як ми знаємо, не повинні містити дублікатів.
- Первинний ключ ідеально підходить, коли ви не можете зберегти значення null у таблиці. Його також можна використовувати, якщо у вас є зовнішній ключ в іншій таблиці для створення зв’язку.