Što je primarni ključ?
Ograničenje primarnog ključa je stupac ili grupa stupaca u tablici koji jedinstveno identificira svaki redak u toj tablici. Primarni ključ ne može biti duplikat, što znači da se ista vrijednost ne može pojaviti više puta u tablici.
Tablica bi trebala imati više od jednog primarnog ključa. Primarni ključ može se definirati na razini stupca ili tablice. Ako kreirate kompozitni primarni ključ, trebao bi biti definiran na razini tablice.
U ovom vodiču naučit ćete:
- Što je primarni ključ?
- Što je jedinstveni ključ?
- Zašto koristiti primarni ključ?
- Zašto koristiti Unique Key?
- Značajke primarnog ključa
- Značajke jedinstvenog ključa
- Primjer izrade primarnog ključa
- Primjer izrade jedinstvenog ključa
- Razlika između primarnog i jedinstvenog ključa
- Što je bolje?
Što je jedinstveni ključ?
Jedinstveni ključ je skupina jednog ili više polja ili stupaca tablice koji jedinstveno identificiraju zapis baze podataka.
Jedinstveni ključ isti je kao i primarni ključ, ali može prihvatiti jednu nultu vrijednost za stupac tablice. Također ne može sadržavati identične vrijednosti. Na jedinstvena ograničenja poziva se inozemni ključ drugih tablica.
KLJUČNE RAZLIKE
- U tablici može biti jedan primarni ključ, dok u tablici može biti više jedinstvenih ključeva.
- Svrha primarnog ključa je provesti cjelovitost entiteta, s druge strane svrha jedinstvenog ključa je provesti jedinstvene podatke.
- U primarnom ključu zadani indeks je klasteriran, dok u jedinstvenom ključu zadani indeks nije klasteriran
- Primarni ključ ne dopušta null stupce, dok jedinstveni dopušta null stupce.
- U primarnom ključu duplicirani ključevi nisu dopušteni dok su u jedinstvenom ključu, ako su jedan ili više dijelova ključa null, tada su dopušteni duplicirani ključevi.
Zašto koristiti primarni ključ?
Evo važnih razloga za upotrebu primarnog ključa:
- Glavni je cilj primarnog ključa identificirati svaki zapis u tablici baze podataka.
- Primarni ključ možete koristiti kada ne dopuštate nekome unos null vrijednosti.
- Ako izbrišete ili ažurirate zapis, poduzet će se radnja koju ste naveli kako bi se osigurala cjelovitost podataka baze podataka.
- Izvršite operaciju ograničenja kako biste odbili operaciju brisanja ili ažuriranja za nadređenu tablicu.
- Podaci se organiziraju u slijedu klasteriziranog indeksa kad god fizički organizirate DBMS tablicu.
Zašto koristiti Unique Key?
Evo važnih razloga za upotrebu jedinstvenog ključa:
- Svrha jedinstvenog ključa je osigurati da su podaci u stupcu za svaki zapis tablice jedinstveni.
- Kada dopustite korisniku da unese nulu vrijednost.
- Koristi se jedinstveni ključ jer prema zadanim postavkama stvara neklasterizirani indeks.
- Jedinstveni ključ može se koristiti kada u stupcu morate zadržati null vrijednosti.
- Kada jedno ili više polja / stupaca tablice koji jedinstveno identificiraju zapis u tablici baze podataka.
Značajke primarnog ključa
Ovdje su važne značajke primarnog ključa:
- Primarni ključ implementira cjelovitost entiteta tablice.
- U tablici možete zadržati samo jedan primarni.
- Primarni ključ sadrži jedan ili više stupaca tablice.
- Stupci su definirani kao ne null.
Značajke jedinstvenog ključa
Ovdje su važne značajke jedinstvenog ključa:
- U tablici možete definirati više od jednog jedinstvenog ključa.
- Prema zadanim postavkama, jedinstveni ključevi nalaze se u neklasteriziranim jedinstvenim indeksima.
- Sastoji se od jednog ili više stupaca tablice.
- Stupac tablice može biti nula, ali poželjna je samo jedna nula po stupcu.
- Na jedinstveno ograničenje lako se može uputiti ograničenje stranog ključa.
Primjer izrade primarnog ključa
Sljedeći primjer opisuje da postoji tablica koja se naziva student. Sadrži pet atributa, 1) StudID, 2) Broj svitka, 3) Ime, 4) Prezime i 5) E-pošta.
Atribut Roll No nikada ne može sadržavati duplikat ili null vrijednost. To je zato što svaki student upisan na sveučilište može imati jedinstveni popisni broj. Svaki red tablice možete lako identificirati s brojem studentskog broja. Dakle, smatra se primarnim ključem.
![](https://cdn.css-code.org/images/2/041720_1123_PrimaryKeyv2.png.webp)
Primjer izrade jedinstvenog ključa
Razmotrimo istu tablicu učenika s atributima, 1) StudID, 2) Roll No, 3) Ime, 4) Prezime i 5) E-pošta.
Stud ID može imati jedinstveno ograničenje gdje unosi u stupac ID ID mogu biti jedinstveni, jer svaki student sveučilišta mora imati jedinstveni ID broj. U slučaju da student mijenja sveučilište, u tom slučaju ne bi imao matičnu kartu. Unos može imati null vrijednost jer je u ograničenju jedinstvenog ključa dopuštena samo jedna null.
![](https://cdn.css-code.org/images/2/041720_1123_PrimaryKeyv3.png.webp)
Razlika između primarnog i jedinstvenog ključa
Ovdje su važne razlike između primarnog i jedinstvenog ključa:
Osnovni ključ | Jedinstveni ključ |
U tablici može biti jedan primarni ključ | U tablici može biti više jedinstvenih ključeva |
Ne dopušta null stupce. | Omogućuje null stupce. |
Zadani indeks je klasteriran | Zadani indeks nije klasteriran |
Svrha primarnog ključa je provesti cjelovitost entiteta. | Svrha jedinstvenog ključa je provesti jedinstvene podatke. |
Primarni ključ može se stvoriti sintaksom:
CREATE TABLE Employee(ID int PRIMARY KEY,Name varchar(255),City varchar(150)) | Jedinstveni ključ može se stvoriti sintaksom:
CREATE TABLE Employee(ID int UNIQUE.Name varchar(255) NOT NULL. City varchar(150)) |
SQL ograničenje omogućuje vam jedinstveno prepoznavanje svakog zapisa ili retka u tablici baze podataka. | SQL ograničenje ne dopušta da se ista vrijednost dodijeli dvama izoliranim zapisima u tablici baze podataka. |
U primarnom ključu dvostruki ključevi nisu dopušteni. | U jedinstvenom ključu, ako je jedan ili više dijelova ključa null, tada su dopušteni duplicirani ključevi. |
Što je bolje?
- Jedinstveni ključ je bolji kada imate stupce za koje znate da ne smiju sadržavati dupliciranje. Ovo postaje dobar način za provjeru valjanosti podataka.
- Primarni ključ idealan je kada ne možete zadržati nulu u tablici. Također se može koristiti kada u drugoj tablici imate strani ključ za stvaranje odnosa.