Sobes.tech
Junior

Mis on primaar- ja välisvõtmed ning millised on nende piirangud?

sobes.tech AI

Vastus AI-lt

Põhivõti (Primary Key) on veerg või veergude kombinatsioon andmebaasi tabelis, mis unikaalselt identifitseerib iga kirje selles tabelis.

  • Piirangud:
    • Unikaalsus: Põhivõtme väärtused peavad tabelis olema unikaalsed.
    • NULL-väärtus ei ole lubatud: Põhivõti ei tohi sisaldada NULL-väärtust.

Väline võti (Foreign Key) on veerg või veergude kogum ühes entiteedis (alamtabelis), mis viitab teise entiteedi (ema-tabeli) põhivõtmele. See loob seose kahe tabeli vahel.

  • Piirangud:
    • Viidete terviklikkus: Väline võti väärtused peavad vastama olemasolevale põhivõtme väärtusele ema-tabelis või olema NULL (kui see on lubatud).

SQL näide:

// Tabeli loomine põhivõtmega
CREATE TABLE Users (
    UserID INT PRIMARY KEY, // UserID - põhivõti
    UserName VARCHAR(255)
);

// Tabeli loomine välise võtmega
CREATE TABLE Orders (
    OrderID INT PRIMARY KEY,
    UserID INT,
    OrderDate DATE,
    FOREIGN KEY (UserID) REFERENCES Users(UserID) // UserID - väline võti, viitab Users.UserID-le
);