Разлика между първичен ключ и уникален ключ
Ключова разлика между първичен ключ и уникален ключ
- Може да има един първичен ключ в таблица, докато в таблицата може да има множество уникални ключове.
- Целта на първичния ключ е да наложи целостта на обекта; от друга страна, целта на уникалния ключ е да налага уникални данни.
- В първичните ключове индексът по подразбиране е групиран, докато в уникалните ключове индексът по подразбиране не е групиран
- Първичният ключ не позволява нулеви колони, докато уникалният ключ позволява нулеви колони.
- В първичния ключ дублиращите се ключове не са разрешени, докато в уникален ключ, ако една или повече ключови части са нулеви, тогава дублиращите се ключове са разрешени.
Тук анализирах разликата между първичния ключ и уникалния ключ и ще оценя изчерпателно техните плюсове и минуси.
Какво е първичен ключ?
Ограничение за първичен ключ е колона или група от колони в таблица, която уникално идентифицира всеки ред в тази таблица. Първичният ключ не може да бъде дубликат, което означава, че една и съща стойност не може да се появява повече от веднъж в таблицата.
Една таблица може да има само един първичен ключ. Първичен ключ може да се дефинира на ниво колона или таблица. Ако създадете съставен първичен ключ, той трябва да бъде дефиниран на ниво таблица.
Пример за създаване на първичен ключ
Следващият пример описва, че има таблица, наречена student. Той съдържа пет атрибута: 1) StudID, 2) Roll No., 3) First Name, 4) Last Name и 5) Email.
Атрибутът 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) ) |
Можете също така да проучите: Разлика между първичен ключ и външен ключ
Как да избирате между първичен ключ и уникален ключ
- Уникалните ключове са по-добри, когато имаме колони, за които знаем, че не трябва да съдържат дублиране.
- Първичният ключ е идеален, когато не можете да запазите нула в таблицата. Може да се използва и когато имате външен ключ в друга таблица за създаване на връзка.