Sobes.tech
Junior

Mis on võtmed andmebaasis?

sobes.tech AI

Vastus AI-lt

Andmebaasi võti on üks või mitu välja (veergu) tabelis, mis teenivad kirje (rida) unikaalseks identifitseerimiseks või ühenduste loomiseks tabelite vahel.

Võtmetüübid:

  • Esimene võti (Primary Key; PK):
    • Unikaalselt identifitseerib iga kirje tabelis.
    • Ei tohi sisaldada NULL väärtusi.
    • Tabelis võib olla ainult üks esimene võti.
  • Väline võti (Foreign Key; FK):
    • Loob ühenduse kahe tabeli vahel, viidates teise tabeli esimesele või unikaalsele võtmele.
    • Tagab viiteintegratsiooni, garanteerides viidatud kirje olemasolu.
  • Unikaalne võti (Unique Key; UK):
    • Tagab väärtuste unikaalsuse määratud väljadest, kuid võib sisaldada NULL väärtusi (tavaliselt mitte rohkem kui üks NULL).
    • Tabelis võib olla mitu unikaalset võtit.
  • Kandidaatvõti (Candidate Key):
    • Iga minimaalne väljade kogum, mis suudab kirje unikaalselt identifitseerida.
    • Üks kandidaatvõtmetest valitakse esmaseks võtme.
  • Supervõti (Super Key):
    • Väljade kogum, mis suudab kirje unikaalselt identifitseerida. Kandidaatvõti on minimaalne supervõti.

Näide välise võtme kasutamisest:

CREATE TABLE Orders (
    order_id INT PRIMARY KEY, // Esmane võti tabelile Orders
    customer_id INT,
    order_date DATE,
    FOREIGN KEY (customer_id) REFERENCES Customers(customer_id) // Välisvõti, mis viitab tabelile Customers
);

CREATE TABLE Customers (
    customer_id INT PRIMARY KEY, // Esmane võti tabelile Customers
    customer_name VARCHAR(255)
);