Junior
Čo je cudzí kľúč?
sobes.tech AI
Odpoveď od AI
Cudzí kľúč (FOREIGN KEY) je obmedzenie integrity dát v relačných databázach. Vytvára vzťah medzi dvoma tabuľkami odkazom na primárny kľúč (alebo iný cudzí kľúč) v inej tabuľke.
Hlavné funkcie cudzieho kľúča:
- Zabezpečenie referenčnej integrity: Zaručuje, že hodnoty v stĺpci cudzieho kľúča existujú v odkazovanom stĺpci rodičovskej tabuľky. Tým sa predchádza "sirotím" záznamom.
- Vytváranie vzťahov medzi tabuľkami: Určuje, ako sú údaje z rôznych tabuliek prepojené.
- Kaskádové akcie: Umožňuje automaticky vykonávať akcie (vymazanie alebo aktualizáciu) v detskej tabuľke pri zmene údajov v rodičovskej tabuľke.
Príklad vytvorenia cudzieho kľúča v SQL:
CREATE TABLE `objednávky` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`meno_zákazníka` VARCHAR(255),
`produkt_id` INT,
FOREIGN KEY (`produkt_id`) REFERENCES `produkty`(`id`)
);
CREATE TABLE `produkty` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`názov_produktu` VARCHAR(255),
`cena` DECIMAL(10, 2)
);
V tomto príklade je produkt_id v tabuľke objednávky cudzí kľúč odkazujúci na id v tabuľke produkty. Tým sa zabezpečuje, že každá objednávka je spojená s existujúcim produktom.