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

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

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

Видео: Разлика между първичен ключ и уникален ключ
Видео: Урок 233. Секреты нарезки ключей. 2024, Април
Anonim

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

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

Какво е уникален ключ?

Както бе споменато по-рано, уникалният ключ е единична колона или набор от колони, които могат уникално да идентифицират ред в таблица. И така, уникален ключ е ограничен, така че няма две стойности от него да са равни. Едно важно свойство е, че уникалните ключове не налагат ограничението NOT NULL. Тъй като NULL представлява липсата на стойност, ако два реда имат NULL в колона, това не означава, че стойностите са равни. Колона, дефинирана като уникален ключ, позволява само една NULL стойност в тази колона. Тогава това може да се използва за идентифициране на конкретния ред по уникален начин. Например в таблица, която съдържа информация за студента, студентският идентификатор може да бъде дефиниран като уникален ключ. Тъй като няма двама ученици, които могат да имат един и същ идентификатор, той уникално идентифицира един студент. Така колоната за студентски идентификатор удовлетворява всички свойства на уникален ключ. В зависимост от дизайна на базата данни,таблица може да има повече от един уникален ключ.

Какво е първичен ключ?

Първичният ключ също е колона или комбинация от колони, която уникално дефинира ред в таблица на релационна база данни. Таблицата може да има най-много един първичен ключ. Първичният ключ налага имплицитното ограничение NOT NULL. И така, колона, която е дефинирана като първичен ключ, не може да има NULL стойности в себе си. Първичният ключ може да бъде нормален атрибут в таблицата, който е гарантирано уникален, като номер на социална сигурност или може да бъде уникална стойност, генерирана от системата за управление на базата данни, като глобален уникален идентификатор (GUID) в Microsoft SQL Server. Първичните ключове се дефинират чрез ограничението PRIMARY KEY в ANSI SQL Standard. Първичният ключ може да бъде дефиниран и при създаването на таблицата. SQL позволява първичният ключ да бъде съставен от една или повече колони и всяка колона, която е включена в първичния ключ, е имплицитно дефинирана да НЕ Е НУЛНА. Но някои системи за управление на бази данни изискват изрично да правят колоните на първичния ключ NOT NULL.

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

Въпреки че и първичният ключ, и уникалният ключ са една или повече колони, които могат уникално да идентифицират ред в таблица, те имат някои важни разлики. Най-важното е, че таблицата може да има само един първичен ключ, докато може да има повече от един уникален ключ. Първичният ключ може да се разглежда като частен случай на уникалния ключ. Друга разлика е, че първичните ключове имат имплицитно ограничение NOT NULL, докато уникалният ключ няма това ограничение. Следователно, уникалните ключови колони могат или не могат да съдържат NULL стойности, но колоните на първичния ключ не могат да съдържат NULL стойности.

Препоръчано: