Middle
Jak na fyzické úrovni implementovat vztah jeden k jednomu mezi dvěma tabulkami?
sobes.tech AI
Odpověď od AI
Fyzická úroveň vztahu jeden ku jednomu medzi dvoma tabuľkami je implementována několika způsoby:
-
Společný primární klíč — obě tabulky mají stejnou hodnotu primárního klíče, přičemž v jedné z nich tento klíč zároveň slouží jako cizí klíč na druhou tabulku.
-
Unikátní cizí klíč — v jedné tabulce je vytvořen cizí klíč na jinou tabulku s omezením UNIQUE, aby bylo zajištěno, že každému záznamu odpovídá nejvýše jeden záznam v související tabulce.
Příklad s společným primárním klíčem:
CREATE TABLE Osoba (
OsobaID INT PRIMARY KEY,
Jméno VARCHAR(100)
);
CREATE TABLE Pas (
OsobaID INT PRIMARY KEY,
ČísloPasu VARCHAR(50),
FOREIGN KEY (OsobaID) REFERENCES Osoba(OsobaID)
);
Zde může být pro každý záznam v Osoba nejvýše jeden záznam v Pas, a naopak.