1. Primary Key
Definitsioon:
Primary key on veerg (või veerud), mis unikaalselt identifitseerib iga rea tabelis.
Milleks kasutatakse:
- iga kirje üheselt tuvastamiseks
- seoste loomiseks teiste tabelitega
Erinevus:
- ei tohi sisaldada duplikaate ega NULL väärtusi
- tabelis saab olla ainult üks primary key
Näide:
CREATE TABLE Opilane (
opilane_id INT PRIMARY KEY,
nimi VARCHAR(50)
);
2. Foreign Key
Definitsioon:
Foreign key on veerg, mis viitab teise tabeli primary key-le.
Milleks kasutatakse:
- tabelite vaheliste seoste loomiseks
Erinevus:
- võib sisaldada korduvaid väärtusi
- võib olla NULL (kui pole piiratud)
Näide:
CREATE TABLE Kursus (
kursus_id INT PRIMARY KEY,
nimetus VARCHAR(50)
);CREATE TABLE Registreerimine (
reg_id INT PRIMARY KEY,
opilane_id INT,
kursus_id INT,
FOREIGN KEY (opilane_id) REFERENCES Opilane(opilane_id),
FOREIGN KEY (kursus_id) REFERENCES Kursus(kursus_id)
);

3. Unique Key
Definitsioon:
Unique key tagab, et veerus olevad väärtused on unikaalsed.
Milleks kasutatakse:
- vältida duplikaatväärtusi (nt email)
Erinevus:
- lubab tavaliselt NULL väärtusi (erinevalt primary key-st)
Näide:
CREATE TABLE Kasutaja (
id INT PRIMARY KEY,
email VARCHAR(100) UNIQUE
);

4. Simple Key
Definitsioon:
Võti, mis koosneb ühest veerust.
Milleks kasutatakse:
- lihtne unikaalne identifikaator
Erinevus:
- ainult üks atribuut
Näide:
CREATE TABLE Auto (
registrinumber VARCHAR(10) PRIMARY KEY,
mark VARCHAR(50)
);
5. Composite Key
Definitsioon:
Võti, mis koosneb mitmest veerust.
Milleks kasutatakse:
- kui üks veerg ei ole piisav unikaalsuseks
Erinevus:
- mitu atribuuti koos moodustavad võtme
Näide:

6. Compound Key
Definitsioon:
Sageli kasutatakse sünonüümina composite key-le, kuid mõnikord tähendab võtit, kus kõik osad on ka foreign key-d.
Milleks kasutatakse:
- seostabelites
Erinevus:
- koosneb mitmest veerust, sageli viitab teistele tabelitele
Näide:
CREATE TABLE Tellimus_Toode (
tellimus_id INT,
toode_id INT,
kogus INT,
PRIMARY KEY (tellimus_id, toode_id),
FOREIGN KEY (tellimus_id) REFERENCES Tellimus(id),
FOREIGN KEY (toode_id) REFERENCES Toode(id)
);

7. Superkey
Definitsioon:
Superkey on üks või mitu veergu, mis identifitseerivad rea unikaalselt.
Milleks kasutatakse:
- teoreetiline mõiste andmebaasi disainis
Erinevus:
- võib sisaldada üleliigseid veerge
|
8. Candidate Key
Definitsioon:
Candidate key on minimaalne superkey (ilma üleliigsete veergudeta).
Milleks kasutatakse:
- valitakse primary key
Erinevus:
- võib olla mitu candidate key-d
Näide:
CREATE TABLE Toode (
id INT,
triipkood VARCHAR(50),
nimi VARCHAR(50),
UNIQUE (triipkood),
PRIMARY KEY (id)
);

9. Alternate Key
Definitsioon:
Candidate key, mida ei valitud primary key-ks.
Milleks kasutatakse:
- alternatiivne unikaalne identifikaator
Erinevus:
- ei ole primary key, aga on unikaalne
Näide:
CREATE TABLE Users (
user_id INT PRIMARY KEY,
email VARCHAR(100) UNIQUE -- Alternate Key
);
Kasutatud allikad: