Junior
Ce este o cheie externă?
sobes.tech AI
Răspuns de la AI
Cheia străină (FOREIGN KEY) este o restricție de integritate a datelor în bazele de date relaționale. Creează o legătură între două tabele, referindu-se la cheia primară (sau altă cheie străină) dintr-un alt tabel.
Funcțiile principale ale cheii străine:
- Asigurarea integrității referențiale: Garantă că valorile din câmpul cheii străine există în câmpul referențiat al tabelului părinte. Acest lucru previne înregistrările "orfan".
- Stabilirea relațiilor între tabele: Definește modul în care datele din tabele diferite sunt legate între ele.
- Acțiuni în cascadă: Permite executarea automată a acțiunilor (ștergere sau actualizare) în tabelul copil atunci când se modifică datele în tabelul părinte.
Exemplu de creare a unei chei străine în SQL:
CREATE TABLE `comenzi` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`nume_client` VARCHAR(255),
`id_produs` INT,
FOREIGN KEY (`id_produs`) REFERENCES `produse`(`id`)
);
CREATE TABLE `produse` (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`nume_produs` VARCHAR(255),
`pret` DECIMAL(10, 2)
);
În acest exemplu, id_produs din tabelul comenzi este o cheie străină care face referire la id din tabelul produse. Acest lucru asigură că fiecare comandă este asociată cu un produs existent.