Най- ключова разлика между чужд ключ и първичен ключ е това чужд ключ е колона или набор от колони, които се отнасят до първичен ключ или кандидат-ключ от друга таблица, докато първичният ключ е колона или набор от колони, които могат да бъдат използвани за идентифициране на ред в таблица.
Колона или набор от колони, които могат да се използват за идентифициране или достъп до ред или набор от редове в база данни, се наричат ключ. Основен ключ в релационна база данни е комбинация от колони в таблица, които уникално идентифицират ред на таблицата. Външен ключ в релационна база данни е поле в таблица, което съвпада с основния ключ на друга таблица. Външният ключ се използва за пресичане на референтни таблици.
1. Преглед и ключова разлика
2. Какво е чуждестранен ключ
3. Какво е първичен ключ
4. Паралелно сравнение - Външен ключ и първичен ключ в таблична форма
5. Резюме
Външният ключ е референтно ограничение между две таблици. Той идентифицира колона или набор от колони в една таблица, наречена референтна таблица, която се отнася до набор от колони в друга таблица, наречена реферирана таблица. Външният ключ или колоните в референтната таблица трябва да бъдат първичен или кандидат-ключ (ключ, който може да се използва като първичен ключ) в реферираната таблица. Освен това чуждите ключове позволяват свързване на данни в няколко таблици. Следователно чуждият ключ не може да съдържа стойности, които не се появяват в таблицата, към която се отнася. Тогава препратката, предоставена от чуждия ключ, помага да се свърже информация в няколко таблици и това ще стане от съществено значение при нормализирани бази данни. Множество редове в референтната таблица могат да се отнасят до един ред в реферираната таблица.
Фигура 01: Картографиране на чужди ключове
В стандарта ANSI SQL ограничението FOREIGN KEY дефинира чужди ключове. Освен това е възможно да се дефинират чужди клавиши при създаването на самата таблица. Таблицата може да има множество чужди ключове и те могат да препращат към различни таблици.
Първичният ключ е колона или комбинация от колони, която еднозначно определя ред в таблица на релационна база данни. Таблицата може да съдържа най-много един първичен ключ. Първичният ключ налага неявното ограничение NOT NULL. Следователно, колона с първичен ключ не може да има стойности NULL в нея. Първичният ключ може да бъде нормален атрибут в таблицата, за който е гарантирано, че е уникален като социалноосигурителен номер, или може да бъде уникална стойност, генерирана от системата за управление на базата данни, като глобално уникален идентификатор (GUID) в Microsoft SQL Server.
Фигура 02: Първичен ключ
Освен това, PRIMARY KEY ограничението в ANSI SQL Standard определя първичните ключове. Също така е възможно да се определи първичен ключ при създаване на таблицата. В допълнение към това, SQL позволява първичният ключ да се състои от една или повече колони и всяка колона, която е включена в първичния ключ, е имплицитно дефинирана като НЕ Е НУЛНА. Но някои системи за управление на базата данни изискват да се правят изрично колоните на първичния ключ НЕ НУЛЯРНО.
Външен ключ срещу първичен ключ | |
Външен ключ е колона или група колони в таблица на релационна база данни, която осигурява връзка между данни в две таблици. | Първичният ключ е специална колона от таблици за релационна база данни или комбинация от множество колони, която позволява еднозначно идентифициране на всички записи на таблици. |
НУЛА | |
Външният ключ приема NULL стойност. | Стойността на основния ключ не може да бъде NULL. |
Брой ключове | |
Таблицата може да има множество чужди ключове. | Таблицата може да има само един първичен ключ. |
удвояване | |
Кортежите могат да имат дублирана стойност за атрибут на чужд ключ. | Два кортежа във връзка не могат да имат дублирани стойности за атрибут на първичен ключ. |
Разликата между чужд ключ и първичен ключ е, че чуждестранен ключ е колона или набор от колони, които се отнасят до първичен ключ или кандидат-ключ от друга таблица, докато първичният ключ е колона или набор от колони, които могат да бъдат използвани за уникално идентифицирайте ред в таблица.
1. "Външен ключ." Уикипедия, Фондация Уикимедия, 12 май 2018 г. Достъпно тук
2. "Първичен ключ." Уикипедия, Фондация Уикимедия, 3 април 2018 г. Достъпно тук
1.'Foreign-Key-Mapping'By MovGP0 - Собствена работа, (CC BY-SA 3.0) през Commons Wikimedia
2.'Erd-id-as-basic-key'By UniCollab - Собствена работа, (CC BY-SA 3.0) през Wikimedia на Commons