Sobes.tech
Junior

Какво е външен ключ?

sobes.tech AI

Отговор от AI

Външен ключ (FOREIGN KEY) е ограничение за цялостта на данните в релационните бази данни. Той създава връзка между две таблици, като се позовава на първичния ключ (или друг външен ключ) в друга таблица.

Основните функции на външния ключ:

  • Осигуряване на референтна цялост: Гарантира, че стойностите в полето на външния ключ съществуват в полето, към което се отнася в родителската таблица. Това предотвратява "самотни" записи.
  • Установяване на връзки между таблиците: Определя как данните от различните таблици са свързани.
  • Каскадни действия: Позволява автоматично изпълнение на действия (изтриване или актуализиране) в дъщерната таблица при промени в родителската таблица.

Пример за създаване на външен ключ в SQL:

CREATE TABLE `поръчки` (
    `id` INT AUTO_INCREMENT PRIMARY KEY,
    `име_на_клиента` VARCHAR(255),
    `продукт_id` INT,
    FOREIGN KEY (`продукт_id`) REFERENCES `продукти`(`id`)
);

CREATE TABLE `продукти` (
    `id` INT AUTO_INCREMENT PRIMARY KEY,
    `име_на_продукта` VARCHAR(255),
    `цена` DECIMAL(10, 2)
);

В този пример, продукт_id в таблицата поръчки е външен ключ, който се позовава на id в таблицата продукти. Това гарантира, че всяка поръчка е свързана с съществуващ продукт.