Sobes.tech
Junior

Co jsou klíče v databázi?

sobes.tech AI

Odpověď od AI

Klíč v databázi je jedno nebo více polí (sloupců) tabulky, které slouží k jednoznačné identifikaci záznamů (řádků) nebo k navázání vztahů mezi tabulkami.

Typy klíčů:

  • Primární klíč (Primary Key; PK):
    • Jednoznačně identifikuje každý záznam v tabulce.
    • Nemůže obsahovat hodnoty NULL.
    • V tabulce může být pouze jeden primární klíč.
  • Cizí klíč (Foreign Key; FK):
    • Navazuje vztah mezi dvěma tabulkami, odkazuje na primární nebo unikátní klíč jiné tabulky.
    • Zajišťuje referenční integritu, garantuje existenci odkazovaného záznamu.
  • Unikátní klíč (Unique Key; UK):
    • Zaručuje jedinečnost hodnot ve specifikovaných polích, může obsahovat hodnoty NULL (obvykle ne více než jedno NULL).
    • V tabulce může být více unikátních klíčů.
  • Kandidátní klíč (Candidate Key):
    • Jakákoli minimální sada polí, která může jednoznačně identifikovat záznam.
    • Z kandidátních klíčů se vybírá jeden jako primární klíč.
  • Superklíč (Super Key):
    • Sada polí, která může jednoznačně identifikovat záznam. Kandidátní klíč je minimální superklíč.

Příklad použití cizího klíče:

CREATE TABLE Orders (
    order_id INT PRIMARY KEY, -- Primární klíč pro tabulku Orders
    customer_id INT,
    order_date DATE,
    FOREIGN KEY (customer_id) REFERENCES Customers(customer_id) -- Cizí klíč odkazující na tabulku Customers
);

CREATE TABLE Customers (
    customer_id INT PRIMARY KEY, -- Primární klíč pro tabulku Customers
    customer_name VARCHAR(255)
);