Sobes.tech
Junior

Какви видове ключове съществуват в таблиците на базата данни?

sobes.tech AI

Отговор от AI

Съществуват няколко основни типа ключове:

  • PRIMARY KEY: Уникално идентифицира всяко поле в таблицата. В таблицата може да има само един първичен ключ.
  • FOREIGN KEY: Установява връзка между две таблици, като се позовава на първичния ключ в друга таблица. Поддържа цялостта на данните.
  • UNIQUE KEY: Гарантира уникалността на стойностите в колона или група колони, но, за разлика от първичния ключ, може да съдържа NULL (ако е разрешено от дефиницията на колоната).
  • CANDIDATE KEY: Всяка колона или набор от колони, които могат да идентифицират по безспорен начин ред в таблицата. Първичният ключ е един от кандидатските ключове.
  • SUPER KEY: Набор от една или повече колони, които по безспорен начин идентифицират ред в таблицата. Включва кандидатските ключове, но може да съдържа и допълнителни колони, които не са необходими за уникалност.
  • COMPOSITE KEY: Ключ, състоящ се от две или повече колони, взети заедно за уникална идентификация на ред. Може да бъде първичен, външен или уникален ключ.
-- Пример на таблица с различни типове ключове
CREATE TABLE Users (
    user_id INT PRIMARY KEY, -- Първичен ключ
    username VARCHAR(50) UNIQUE, -- Уникален ключ
    email VARCHAR(100),
    city_id INT,
    -- Външен ключ, позоваващ се на таблицата Cities
    FOREIGN KEY (city_id) REFERENCES Cities (city_id)
);

CREATE TABLE Cities (
    city_id INT PRIMARY KEY,
    city_name VARCHAR(50)
);