Разлика между първичен ключ и уникален ключ

И първичният ключ, и уникалният ключ са уникални ключове в релационна база данни, които гарантират уникалността на стойностите на колона или набор от колони. Вече има предварително дефинирано уникално ограничение на ключа в рамките на ограничение на първичен ключ. Докато първичен ключ се използва особено за идентифициране на всеки запис в таблицата, от друга страна, уникален ключ се използва за предотвратяване на дублиращи се записи в колона с изключение на нулев запис. И двата ключа обаче могат да съдържат повече от само една колона от дадена таблица и двамата играят решаваща роля за съхраняването и извличането на данни. Данните представляват поредица от таблици с колони и тези колони съхраняват информация от всички типове, до която допълнително можете да получите достъп или извлечете с помощта на инструкции. Това е мястото, където ключовете стигат до картината. Първичен ключ и Уникален ключ са два уникални ключа, които определят как трябва да се съхраняват данните в системата.

Първичен ключ

Основен ключ (също върви по първична ключова дума), е уникален ключ в релационна база данни, който идентифицира всеки запис в таблица на базата данни. Това е нещо като уникален идентификатор, като номер на социално осигуряване на лице, телефонен номер, номер на шофьорска книжка или номер на табелата на автомобила. Базата данни трябва да има само един първичен ключ.

Таблица в база данни съдържа колона или набор от колони, които съдържат стойности, които идентифицират уникално всеки ред в таблицата. Тази колона или набор от колони се нарича първичен ключ на таблицата, който трябва да съдържа уникални стойности и не може да съдържа нулеви стойности. Без първичен ключ релационната база данни няма да работи.

Първичен ключ се създава чрез дефиниране на PRIMARY KEY ограничение при създаване или промяна на таблица. В SQL Standard първичен ключ може да съдържа една или няколко колони, докато всяка колона се дефинира неявно като NOT NULL. Ако дефинирате PRIMARY KEY ограничение за повече от една колона, това може да доведе до дублиране на стойности в една колона, затова всяка комбинация от стойности трябва да е уникална за всички колони.

Първичният ключ има следните функции:

  • Всяка таблица трябва да има един и само един първичен ключ, не повече от един.
  • Първичният ключ не може да съдържа NULL стойности.
  • Той може да се състои от една или повече колони.
  • Всички колони трябва да бъдат определени като NOT NULL.
  • Основен ключ е клъстериран уникален индекс по подразбиране.

Уникален ключ

Уникален ключ е набор от една или повече от една колона / поле на таблица, които уникално идентифицират запис в таблица на базата данни. Ограничението UNIQUE KEY гарантира, че всички стойности в колона са уникални в базата данни. Подобно на първичен ключ, уникален ключ може да се състои от повече от една колона. Уникалният ключ обаче може да приеме само една нулева стойност. Няма два реда да имат еднакви стойности в таблица с база данни.

Уникалният ключ е доста подобен на първичен ключ и може да бъде определен по време на създаването на таблицата. Когато колона или набор от колони са маркирани като уникални в системата на релационна база данни, тя проверява целостта на стойностите, преди да назначи ограничението, така че да не позволява на два записа да имат идентични стойности в определена колона.

UNIQUE е ограничение за колона, която не е PRIMARY KEY, която характеризира следното:

  • Уникалното ограничение на KEY гарантира уникалността на стойностите.
  • На масата могат да бъдат определени множество уникални клавиши.
  • Колона може да съдържа NULL стойност, но само една NULL стойност на колона е разрешена.
  • Уникалният ключ може да създаде некластериран индекс по подразбиране.

Разлика между първичен ключ и уникален ключ

1. Функция

Първичен ключ е вид уникален идентификатор на ключ, който уникално идентифицира ред в таблицата на базата данни, докато уникален ключ идентифицира всички възможни редове, които съществуват в таблица, а не само съществуващите в момента редове.

2. Поведение

Основен ключ се използва за идентифициране на запис в таблица на база данни, докато уникален ключ се използва за предотвратяване на дублиращи се стойности в колона с изключение на нулев запис.

3. Индексиране

Основен ключ създава клъстериран уникален индекс по подразбиране, докато уникален ключ е уникален некластериран индекс в таблица на базата данни по подразбиране.

4. Нулеви стойности

Първичният ключ не може да приеме NULL стойности в таблица на базата данни, докато уникалният ключ може да приеме само една NULL стойност в таблицата.

5. Ограничаване

На масата може да има само един и само един първичен ключ, но в системата от база данни може да има няколко уникални ключа за таблица.

Първичен ключ срещу уникален ключ

Първичен ключ

Уникален ключ

Използва се първичен ключ за уникално идентифициране на запис / ред в таблица на базата данни. Уникален ключ се използва за идентифициране на всички възможни редове в таблица, а не само на съществуващите в момента редове.
Не приема NULL стойности. Той може да приеме само една NULL стойност в таблица.
Той е клъстериран индекс по подразбиране, което означава, че данните са организирани в последователността на клъстериран индекс. Това е уникален некластериран индекс по подразбиране.
В таблицата може да има само един първичен ключ. Таблицата може да има множество уникални клавиши.
Първичният ключ се определя с помощта на PRIMARY KEY ограничение. Уникалният ключ е представен с помощта на UNIQUE ограничение.
Използва се за идентифициране на ред в таблица. Използва се за предотвратяване на дублиращи се стойности в колона.
Стойностите на първичния ключ не могат да бъдат променяни или изтривани. Уникалните ключови стойности могат да бъдат променяни.

резюме

  • Както първичният, така и уникалният ключ са ограничения за цялост на цялостта, които са сходни в много аспекти. Те обаче имат своя справедлив дял от различия, що се отнася до програмирането. И двете са основни понятия, които се използват предимно в системите за управление на бази данни.
  • Първичният ключ е набор от една или повече колони / полета от таблица на базата данни, които еднозначно идентифицират запис в таблица. Уникалният ключ, от друга страна, не позволява на два записа да имат еднакви стойности в колона.
  • В концептуален план може да има само един ПЪРВИЧЕН КЛЮЧ за дадена таблица, докато може да има повече от един УНИКАЛЕН КЛЮЧ за таблица.
  • Първичният ключ трябва да е уникален, но уникалният ключ не е задължително да бъде първичен ключ.
  • Първичен ключ не може да приеме NULL стойности в таблица, докато уникален ключ може да позволи NULL стойности с изключение само на един NULL в таблица.