Sobes.tech
Junior

Čo sú kľúče v databáze?

sobes.tech AI

Odpoveď od AI

Kľúč v databáze je jedno alebo viac polí (stĺpcov) tabuľky, ktoré slúžia na jednoznačnú identifikáciu záznamov (riadkov) alebo na nadväzovanie vzťahov medzi tabuľkami.

Typy kľúčov:

  • Primárny kľúč (Primary Key; PK):
    • Jednoznačne identifikuje každý záznam v tabuľke.
    • Nemôže obsahovať NULL hodnoty.
    • V tabuľke môže byť len jeden primárny kľúč.
  • Cudzí kľúč (Foreign Key; FK):
    • Nadväzuje vzťah medzi dvoma tabuľkami, odkazujúc na primárny alebo unikátny kľúč inej tabuľky.
    • Zabezpečuje referenčnú integritu, garantujúc existenciu odkazovaného záznamu.
  • Unikátny kľúč (Unique Key; UK):
    • Zaručuje jedinečnosť hodnôt v určených poliach, môže obsahovať NULL hodnoty (zvyčajne nie viac ako jeden NULL).
    • V tabuľke môže byť viacero unikátnych kľúčov.
  • Kandidátny kľúč (Candidate Key):
    • Akékoľvek minimálne množstvo polí, ktoré môže jednoznačne identifikovať záznam.
    • Z kandidátnych kľúčov sa vyberie jeden ako primárny kľúč.
  • Superkľúč (Super Key):
    • Množina polí, ktorá môže jednoznačne identifikovať záznam. Kandidátny kľúč je minimálny superkľúč.

Príklad použitia cudzieho kľúča:

CREATE TABLE Orders (
    order_id INT PRIMARY KEY, -- Primárny kľúč pre tabuľku Orders
    customer_id INT,
    order_date DATE,
    FOREIGN KEY (customer_id) REFERENCES Customers(customer_id) -- Cudzí kľúč odkazujúci na tabuľku Customers
);

CREATE TABLE Customers (
    customer_id INT PRIMARY KEY, -- Primárny kľúč pre tabuľku Customers
    customer_name VARCHAR(255)
);