Різниця між первинним і зовнішнім ключем

Клавіші - це основні елементи реляційної бази даних, оскільки вони встановлюють взаємозв'язок між парами таблиць і забезпечують однозначну ідентифікацію кожного запису в таблиці. Ключі мають більш особливе значення, ніж встановлення стосунків; вони також допомагають з референтною доброчесністю, і вони є головним компонентом цілісності рівня таблиці. У таблицях зберігаються величезні фрагменти даних, які зазвичай поширюються на тисячі записів, усі з яких несортовані та неорганізовані. Отримати певні дані з цих численних записів може бути часом важко, а іноді й неможливо. Ось тут Ключі приходять до зображення. Тут ми вивчимо два дуже важливих ключа схеми реляційної бази даних та різницю між ними: Первинний ключ та Зовнішній ключ.

Що таке первинний ключ?

Первинний ключ - це спеціальний ключ, який однозначно ідентифікує кожен запис у таблиці. У реляційній базі даних дуже важливо мати унікальний ідентифікатор у кожному рядку таблиці, а первинний ключ - це лише те, що вам потрібно однозначно ідентифікувати кортеж у межах таблиці. Кортеж представляє набір атрибутів значення у реляційній базі даних. Первинний ключ може стосуватися стовпця або набору стовпців у таблиці реляційних баз даних, які використовуються для неявного визначення всіх записів у таблиці. Первинний ключ повинен бути унікальним для кожного запису, оскільки він виступає як унікальний ідентифікатор, і він не повинен містити нульових значень. Кожна база даних повинна мати один і лише один первинний ключ.

Що таке зовнішній ключ?

Іноземний ключ позначає поле або сукупність полів у записі бази даних, що однозначно ідентифікує ключове поле іншої записи бази даних у якійсь іншій таблиці. Простіше кажучи, він встановлює зв'язок між записами у двох різних таблицях бази даних. Це може бути стовпець у таблиці, який вказує на стовпці первинного ключа, тобто зовнішній ключ, визначений у таблиці, відноситься до первинного ключа якоїсь іншої таблиці. Посилання мають вирішальне значення у реляційних базах даних для встановлення зв’язків між записами, що має важливе значення для сортування баз даних. Іноземні ключі відіграють важливу роль у нормалізації реляційних баз даних, особливо коли таблиці потребують доступу до інших таблиць.

Різниця між первинним і зовнішнім ключем

Основи первинного ключа та зовнішнього ключа

Первинний ключ - це спеціальний ключ у реляційній базі даних, який виступає унікальним ідентифікатором для кожного запису, тобто однозначно ідентифікує кожен рядок / запис у таблиці, і його значення має бути унікальним для кожного рядка таблиці. Зовнішній ключ, з іншого боку, це поле в одній таблиці, яке пов'язує дві таблиці разом. Він посилається на стовпчик або групу стовпців, які однозначно ідентифікують рядок іншої таблиці або тієї ж таблиці.

Відношення первинного ключа до зовнішнього ключа

Первинний ключ однозначно ідентифікує запис у таблиці реляційних баз даних, тоді як зовнішній ключ посилається на поле таблиці, яка є первинним ключем іншої таблиці. Первинний ключ повинен бути унікальним, і лише один первинний ключ дозволений у таблиці, яку необхідно визначити, тоді як у таблиці дозволено більше ніж один зовнішній ключ.

Дублювання значень первинного ключа та зовнішнього ключа

Первинний ключ - це комбінація обмежень UNIQUE та Not Null, тому не можна допускати жодних повторюваних значень у полі первинного ключа в таблиці реляційних баз даних. Немає двох рядків, які можуть містити повторювані значення для атрибута первинного ключа. На відміну від первинного ключа, зовнішній ключ може містити повторювані значення, а таблиця в реляційній базі даних може містити більше, ніж іноземний ключ.

NULL первинного ключа та зовнішнього ключа

Однією з головних відмінностей між ними є те, що на відміну від первинних ключів, зовнішні ключі також можуть містити значення NULL. Таблиця в реляційній базі даних може мати лише один первинний ключ, який не дозволяє значенням NULL.

Тимчасова таблиця первинного ключа та зовнішнього ключа

Обмеження первинного ключа може бути визначено неявно на тимчасових таблицях та їх змінних, тоді як обмеження зовнішнього ключа не може бути застосоване до локальних або глобальних тимчасових таблиць.

Видалення первинного ключа та зовнішнього ключа

Значення первинного ключа не можна видалити з батьківської таблиці, яку в дочірній таблиці називають іноземним ключем. Перш ніж видалити батьківську таблицю, потрібно спочатку видалити дочірню таблицю. Навпаки, значення іноземного ключа можна видалити з дочірньої таблиці, навіть якщо значення відсилається до первинного ключа батьківської таблиці.

Первинний ключ проти зовнішнього ключа: порівняльна діаграма

Короткий зміст віршів первинного ключа Іноземний ключ

Ключі відіграють вирішальну роль у існуванні схеми бази даних для встановлення зв’язків між таблицями та всередині таблиці. Клавіші встановлюють відносини та застосовують різні типи цілісності, особливо цілісність на рівні таблиці та цілісність на рівні відносин. Для одного вони переконують, що таблиця містить унікальні записи, і поля, які ви використовуєте для встановлення зв'язку між таблицями, повинні містити відповідні значення. Первинний ключ та зовнішній ключ - це два найважливіші та поширені типи ключів, що використовуються у реляційних базах даних. Первинний ключ - це спеціальний ключ, який використовується для однозначної ідентифікації записів у таблиці, тоді як зовнішній ключ використовується для встановлення зв'язку між двома таблицями. Обидва є однаковими за структурою, але грають різні ролі в реляційній схемі бази даних.