DBMS ključevi: tipovi kandidata, super, primarni, strani ključ s primjerom
Što su ključevi u DBMS-u?
KEYS u DBMS-u je atribut ili skup atributa koji vam pomaže da identificirate red(torku) u relaciji(tablici). Omogućuju vam da pronađete odnos između dvije tablice. Ključevi vam pomažu da jedinstveno identificirate redak u tablici kombinacijom jednog ili više stupaca u toj tablici. Ključ je također koristan za pronalaženje jedinstvenog zapisa ili retka iz tablice. Ključ baze podataka također je koristan za pronalaženje jedinstvenog zapisa ili retka iz tablice.
Primjer:
ID zaposlenika | Ime | Prezime |
---|---|---|
11 | Andrija | Johnson |
22 | mužjak nekih malih životinja | Drvo |
33 | Alex | Čio |
U gore navedenom primjeru, ID zaposlenika primarni je ključ jer jedinstveno identificira evidenciju zaposlenika. U ovoj tablici nijedan drugi zaposlenik ne može imati isti ID zaposlenika.
Zašto nam treba ključ?
Evo nekoliko razloga za korištenje sql ključa u DBMS sustavu.
- Ključevi vam pomažu identificirati bilo koji red podataka u tablici. U stvarnoj aplikaciji, tablica može sadržavati tisuće zapisa. Štoviše, zapisi bi se mogli duplicirati. Ključevi u RDBMS-u osiguravaju da možete jedinstveno identificirati zapis tablice unatoč ovim izazovima.
- Omogućuje vam da uspostavite odnos između tablica i identificirate odnos između tablica
- Pomoći vam da ojačate identitet i integritet u vezi.
Vrste ključeva u DBMS-u (sustav za upravljanje bazom podataka)
Postoji uglavnom osam različitih tipova ključeva u DBMS-u i svaki ključ ima svoju različitu funkcionalnost:
- Super ključ
- Glavni ključ
- Ključ kandidata
- Alternativni ključ
- Strani kljuc
- Složeni ključ
- Kompozitni ključ
- Zamjenski ključ
Pogledajmo svaki od ključeva u DBMS-u na primjeru:
- Super ključ – Super ključ je grupa pojedinačnih ili više ključeva koji identificiraju retke u tablici.
- Glavni ključ - je stupac ili grupa stupaca u tablici koji jedinstveno identificiraju svaki red u toj tablici.
- Ključ kandidata – je skup atributa koji jedinstveno identificiraju torke u tablici. Ključ kandidata je super ključ bez atributa koji se ponavljaju.
- Alternativni ključ – je stupac ili grupa stupaca u tablici koji jedinstveno identificiraju svaki red u toj tablici.
- Strani kljuc - je stupac koji stvara odnos između dvije tablice. Svrha stranih ključeva je održati integritet podataka i omogućiti navigaciju između dvije različite instance entiteta.
- Složeni ključ – ima dva ili više atributa koji vam omogućuju jedinstveno prepoznavanje određenog zapisa. Moguće je da svaki stupac nije jedinstven unutar baze podataka.
- Kompozitni ključ – je kombinacija dva ili više stupaca koji jedinstveno identificiraju retke u tablici. Kombinacija stupaca jamči jedinstvenost, iako individualna jedinstvenost nije zajamčena.
- Zamjenski ključ – Umjetni ključ koji ima za cilj jedinstvenu identifikaciju svakog zapisa naziva se surogat ključ. Ove vrste ključeva su jedinstvene jer se stvaraju kada nemate prirodni primarni ključ.
Što je Super ključ?
Superključ je grupa pojedinačnih ili više ključeva koji identificiraju retke u tablici. Super ključ može imati dodatne atribute koji nisu potrebni za jedinstvenu identifikaciju.
Primjer:
EmpSSN | EmpNum | Empname |
---|---|---|
9812345098 | AB05 | prikazan |
9876512345 | AB06 | Roslyn |
199937890 | AB07 | James |
U gore navedenom primjeru, EmpSSN i EmpNum ime su superključevi.
Što je primarni ključ?
OSNOVNI KLJUČ in DBMS je stupac ili grupa stupaca u tablici koji jedinstveno identificiraju svaki red u toj tablici. Primarni ključ ne može biti duplikat, što znači da se ista vrijednost ne može pojaviti više od jednom u tablici. Tablica ne može imati više od jednog primarnog ključa.
Pravila za definiranje primarnog ključa:
- Dva retka ne mogu imati istu vrijednost primarnog ključa
- Svaki redak mora imati vrijednost primarnog ključa.
- Polje primarnog ključa ne može biti nula.
- Vrijednost u stupcu primarnog ključa nikada se ne može mijenjati ili ažurirati ako se bilo koji strani ključ odnosi na taj primarni ključ.
Primjer:
U sljedećem primjeru, StudID
je primarni ključ.
StudID | Rola br | Ime | Prezime | |
---|---|---|---|---|
1 | 11 | mužjak nekih malih životinja | Cijena | abc@gmail.com |
2 | 12 | Nick | Wright | xyz@gmail.com |
3 | 13 | Dana | Natan | mno@yahoo.com |
Što je alternativni ključ?
ALTERNATIVNI KLJUČEVI je stupac ili grupa stupaca u tablici koji jedinstveno identificiraju svaki red u toj tablici. Tablica može imati više izbora za primarni ključ, ali samo jedan može biti postavljen kao primarni ključ. Svi ključevi koji nisu primarni ključ nazivaju se alternativnim ključem.
Primjer:
U ovoj tablici, StudID, Roll No, Email kvalificirani su da postanu primarni ključ. Ali budući da je StudID primarni ključ, Roll No, Email postaje alternativni ključ.
StudID | Rola br | Ime | Prezime | |
---|---|---|---|---|
1 | 11 | mužjak nekih malih životinja | Cijena | abc@gmail.com |
2 | 12 | Nick | Wright | xyz@gmail.com |
3 | 13 | Dana | Natan | mno@yahoo.com |
Što je ključ kandidata?
KLJUČ KANDIDATA u SQL je skup atributa koji jedinstveno identificiraju torke u tablici. Ključ kandidata je super ključ bez atributa koji se ponavljaju. Primarni ključ treba odabrati među ključevima kandidata. Svaka tablica mora imati barem jedan ključ kandidata. Tablica može imati više ključeva kandidata, ali samo jedan primarni ključ.
Svojstva ključa kandidata:
- Mora sadržavati jedinstvene vrijednosti
- Ključ kandidata u SQL-u može imati više atributa
- Ne smije sadržavati nulte vrijednosti
- Mora sadržavati minimum polja kako bi se osigurala jedinstvenost
- Jedinstveno identificirajte svaki zapis u tablici
Primjer ključa kandidata: u navedenoj tablici Stud ID, Roll No i email ključevi su kandidata koji nam pomažu da jedinstveno identificiramo evidenciju učenika u tablici.
StudID | Rola br | Ime | Prezime | |
---|---|---|---|---|
1 | 11 | mužjak nekih malih životinja | Cijena | abc@gmail.com |
2 | 12 | Nick | Wright | xyz@gmail.com |
3 | 13 | Dana | Natan | mno@yahoo.com |
Što je vanjski ključ?
STRANI KLJUC je stupac koji stvara odnos između dvije tablice. Svrha stranih ključeva je održati integritet podataka i omogućiti navigaciju između dvije različite instance entiteta. Djeluje kao unakrsna referenca između dvije tablice jer upućuje na primarni ključ druge tablice.
Primjer:
DeptCode | Naziv odjela |
---|---|
001 | Znanost |
002 | Engleski |
005 | računalo |
ID učitelja | Fname | Ime |
---|---|---|
B002 | David | Warner |
B017 | Sara | Josip |
B009 | mikrofon | Brunton |
U ovom primjeru ključa u dbms-u imamo dvije tablice, nastavu i odjel u školi. Međutim, ne postoji način da se vidi koja pretraga radi u kojem odjelu.
U ovoj tablici, dodavanjem stranog ključa u Deptcode imenu nastavnika, možemo stvoriti odnos između dvije tablice.
ID učitelja | DeptCode | Fname | Ime |
---|---|---|---|
B002 | 002 | David | Warner |
B017 | 002 | Sara | Josip |
B009 | 001 | mikrofon | Brunton |
Ovaj koncept je također poznat kao Referentni Integrity.
Što je Compound ključ?
SLOŽENI KLJUČ ima dva ili više atributa koji vam omogućuju jedinstveno prepoznavanje određenog zapisa. Moguće je da svaki stupac nije jedinstven unutar baze podataka. Međutim, kada se kombinira s drugim stupcem ili stupcima, kombinacija složenih ključeva postaje jedinstvena. Svrha složenog ključa u bazi podataka je jedinstvena identifikacija svakog zapisa u tablici.
Primjer:
Narudžba br | ID porta | ime proizvoda | Količina |
---|---|---|---|
B005 | JAP102459 | Miš | 5 |
B005 | DKT321573 | USB | 10 |
B005 | OMG446789 | LCD monitor | 20 |
B004 | DKT321573 | USB | 15 |
B002 | OMG446789 | Laserski printer | 3 |
U ovom primjeru OrderNo i ProductID ne mogu biti primarni ključ jer ne identificiraju jedinstveno zapis. Međutim, može se koristiti složeni ključ ID-a narudžbe i ID-a proizvoda jer jedinstveno identificira svaki zapis.
Što je kompozitni ključ?
KOMPOZITNI KLJUČ je kombinacija dva ili više stupaca koji jedinstveno identificiraju retke u tablici. Kombinacija stupaca jamči jedinstvenost, iako individualna jedinstvenost nije zajamčena. Stoga se kombiniraju kako bi jedinstveno identificirali zapise u tablici.
Razlika između složenog i kompozitnog ključa je u tome što bilo koji dio složenog ključa može biti strani ključ, ali kompozitni ključ može ili ne mora biti dio stranog ključa.
Što je surogat ključ?
SUROGAT KLJUČEVI Umjetni ključ koji ima za cilj jedinstvenu identifikaciju svakog zapisa naziva se surogat ključ. Ova vrsta djelomičnog ključa u dbms-u je jedinstvena jer se stvara kada nemate prirodni primarni ključ. Oni ne daju nikakvo značenje podacima u tablici. Surogat ključ u DBMS-u je obično cijeli broj. Surogat ključ je vrijednost generirana neposredno prije umetanja zapisa u tablicu.
Fname | Prezime | Vrijeme početka | Kraj vrijeme |
---|---|---|---|
Anne | Kovač | 09:00 | 18:00 |
Utičnica | Franjo | 08:00 | 17:00 |
Ana | McLean | 11:00 | 20:00 |
prikazan | Willam | 14:00 | 23:00 |
Gore navedeni primjer prikazuje rasporede smjena različitih zaposlenika. U ovom primjeru, surogat ključ je potreban za jedinstvenu identifikaciju svakog zaposlenika.
Zamjenski ključevi sql dopušteni su kada
- Nijedno svojstvo nema parametar primarnog ključa.
- U tablici kada je primarni ključ prevelik ili kompliciran.
Razlika između primarnog i stranog ključa
Slijedi glavna razlika između primarnog ključa i stranog ključa:
Glavni ključ | Strani kljuc |
---|---|
Pomaže vam da jedinstveno identificirate zapis u tablici. | To je polje u tablici koje je primarni ključ druge tablice. |
Primarni ključ nikada ne prihvaća nulte vrijednosti. | Strani ključ može prihvatiti više null vrijednosti. |
Primarni ključ je klasterirani indeks, a podaci u DBMS tablici su fizički organizirani u nizu klasteriranog indeksa. | Strani ključ ne može automatski stvoriti indeks, klasteriran ili neklasteriran. Međutim, možete ručno stvoriti indeks na stranom ključu. |
Možete imati jedan primarni ključ u tablici. | Možete imati više stranih ključeva u tablici. |
Rezime
- Što je ključ u DBMS-u: Ključ u DBMS-u je atribut ili skup atributa koji vam pomaže da identificirate red (torku) u relaciji (tablici)
- Ključevi unutra RDBMS omogućuju vam da uspostavite odnos između tablica i identificirate odnos između tablica
- Osam vrsta ključeva u DBMS-u su Super, Primary, Candidate, Alternate, Foreign, Compound, Composite i Surrogate Key.
- Super ključ je grupa pojedinačnih ili više ključeva koji identificiraju retke u tablici.
- Stupac ili grupa stupaca u tablici koja nam pomaže da jedinstveno identificiramo svaki red u toj tablici naziva se primarni ključ
- Svi različiti ključevi u DBMS-u koji nisu primarni ključ nazivaju se alternativni ključ
- Super ključ bez ponovljenog atributa naziva se ključem kandidata
- Složeni ključ je ključ koji ima mnogo polja koja vam omogućuju jedinstveno prepoznavanje određenog zapisa
- Ključ koji ima više atributa za jedinstvenu identifikaciju redaka u tablici naziva se složeni ključ
- Umjetni ključ koji ima za cilj jedinstvenu identifikaciju svakog zapisa naziva se surogat ključ
- Primarni ključ nikada ne prihvaća null vrijednosti dok strani ključ može prihvatiti više null vrijednosti.