DBMS-nøgler: Kandidat-, Super-, Primær-, Udenlandske nøgletyper med eksempel

Hvad er nøgler i DBMS?

NØGLER i DBMS er en attribut eller et sæt attributter, som hjælper dig med at identificere en række(tuple) i en relation(tabel). De giver dig mulighed for at finde sammenhængen mellem to tabeller. Taster hjælper dig entydigt med at identificere en række i en tabel ved en kombination af en eller flere kolonner i den tabel. Nøglen er også nyttig til at finde en unik post eller række fra tabellen. Databasenøglen er også nyttig til at finde en unik post eller række fra tabellen.

Eksempel:

Medarbejder-ID Fornavn Efternavn
11 Andrew Johnson
22 Tom Træ
33 Alex Hale

I det ovenfor givne eksempel er medarbejder-id en primær nøgle, fordi den entydigt identificerer en medarbejderpost. I denne tabel kan ingen anden medarbejder have samme medarbejder-id.

Hvorfor har vi brug for en nøgle?

Her er nogle grunde til at bruge sql-nøgle i DBMS-systemet.

  • Taster hjælper dig med at identificere enhver række data i en tabel. I en applikation fra den virkelige verden kunne en tabel indeholde tusindvis af poster. Desuden kunne optegnelserne duplikeres. Nøgler i RDBMS sikrer, at du entydigt kan identificere en tabelpost på trods af disse udfordringer.
  • Giver dig mulighed for at etablere en relation mellem og identificere relationen mellem tabeller
  • Hjælp dig med at håndhæve identitet og integritet i forholdet.

Typer af nøgler i DBMS (Database Management System)

Der er hovedsageligt otte forskellige typer nøgler i DBMS, og hver nøgle har sin forskellige funktionalitet:

  1. Supernøgle
  2. Primærnøgle
  3. Kandidatnøgle
  4. Alternativ nøgle
  5. Fremmed nøgle
  6. Sammensat nøgle
  7. Sammensat nøgle
  8. Surrogatnøgle

Lad os se på hver af nøglerne i DBMS med et eksempel:

  • Super nøgle – En supernøgle er en gruppe af enkelte eller flere nøgler, som identificerer rækker i en tabel.
  • Primærnøgle - er en kolonne eller gruppe af kolonner i en tabel, der unikt identificerer hver række i denne tabel.
  • Kandidatnøgle – er et sæt attributter, der unikt identificerer tupler i en tabel. Candidate Key er en supernøgle uden gentagne attributter.
  • Alternativ nøgle – er en kolonne eller gruppe af kolonner i en tabel, der unikt identificerer hver række i denne tabel.
  • Fremmed nøgle - er en kolonne, der skaber en relation mellem to tabeller. Formålet med fremmednøgler er at opretholde dataintegritet og tillade navigation mellem to forskellige forekomster af en enhed.
  • Sammensat nøgle – har to eller flere attributter, der giver dig mulighed for unikt at genkende en specifik post. Det er muligt, at hver kolonne måske ikke er unik i sig selv i databasen.
  • Sammensat nøgle – er en kombination af to eller flere kolonner, der unikt identificerer rækker i en tabel. Kombinationen af ​​kolonner garanterer unikhed, selvom individuel unikhed ikke er garanteret.
  • surrogatnøgle – En kunstig nøgle, der har til formål at identificere hver post entydigt, kaldes en surrogatnøgle. Disse slags nøgler er unikke, fordi de er skabt, når du ikke har nogen naturlig primær nøgle.

Hvad er Super-nøglen?

En supernøgle er en gruppe af enkelte eller flere nøgler, som identificerer rækker i en tabel. En supernøgle kan have yderligere attributter, som ikke er nødvendige for entydig identifikation.

Eksempel:

EmpSSN EmpNum Empnavn
9812345098 AB05 vist
9876512345 AB06 Roslyn
199937890 AB07 James

I det ovenfor givne eksempel er EmpSSN og EmpNum navn supernøgler.

Hvad er en primær nøgle?

PRIMÆRNØGLE in DBMS er en kolonne eller gruppe af kolonner i en tabel, der unikt identificerer hver række i denne tabel. Den primære nøgle kan ikke være en dublet, hvilket betyder, at den samme værdi ikke kan vises mere end én gang i tabellen. En tabel kan ikke have mere end én primær nøgle.

Regler for definition af primær nøgle:

  • To rækker kan ikke have den samme primærnøgleværdi
  • Det skal for hver række have en primær nøgleværdi.
  • Det primære nøglefelt kan ikke være null.
  • Værdien i en primærnøglekolonne kan aldrig ændres eller opdateres, hvis en fremmednøgle refererer til den primære nøgle.

Eksempel:

I det følgende eksempel, StudID er en primær nøgle.

StudID Rulle nr Fornavn Efternavn E-mail
1 11 Tom Pris abc@gmail.com
2 12 Nick Wright xyz@gmail.com
3 13 Dana Natan mno@yahoo.com

Hvad er den alternative nøgle?

ALTERNATIVE NØGLER er en kolonne eller gruppe af kolonner i en tabel, der unikt identificerer hver række i denne tabel. En tabel kan have flere valgmuligheder for en primær nøgle, men kun én kan indstilles som den primære nøgle. Alle nøgler, der ikke er primærnøgler, kaldes en alternativ nøgle.

Eksempel:

I denne tabel er StudID, Roll No, Email kvalificeret til at blive en primær nøgle. Men da StudID er den primære nøgle, bliver Roll No, Email den alternative nøgle.

StudID Rulle nr Fornavn Efternavn E-mail
1 11 Tom Pris abc@gmail.com
2 12 Nick Wright xyz@gmail.com
3 13 Dana Natan mno@yahoo.com

Hvad er en kandidatnøgle?

KANDIDAT NØGLE i SQL er et sæt attributter, der unikt identificerer tupler i en tabel. Candidate Key er en supernøgle uden gentagne attributter. Den primære nøgle skal vælges blandt kandidatnøglerne. Hver tabel skal have mindst en enkelt kandidatnøgle. En tabel kan have flere kandidatnøgler, men kun en enkelt primærnøgle.

Egenskaber for kandidatnøgle:

  • Det skal indeholde unikke værdier
  • Kandidatnøgle i SQL kan have flere attributter
  • Må ikke indeholde null-værdier
  • Det bør indeholde minimumsfelter for at sikre unikhed
  • Identificer hver post i en tabel unikt

Kandidatnøgle Eksempel: I den givne tabel er Stud ID, Roll No og e-mail kandidatnøgler, som hjælper os til entydigt at identificere elevposten i tabellen.

StudID Rulle nr Fornavn Efternavn E-mail
1 11 Tom Pris abc@gmail.com
2 12 Nick Wright xyz@gmail.com
3 13 Dana Natan mno@yahoo.com

Kandidatnøgle
Kandidatnøgle i DBMS

Hvad er fremmednøglen?

FREMMED NØGLE er en kolonne, der skaber en relation mellem to tabeller. Formålet med fremmednøgler er at opretholde dataintegritet og tillade navigation mellem to forskellige forekomster af en enhed. Den fungerer som en krydsreference mellem to tabeller, da den refererer til den primære nøgle i en anden tabel.

Eksempel:

Afd.kode Afd.navn
001 Videnskab
002 Engelsk
005 Computer
Lærer-id Fnavn Lnavn
B002 David Warner
B017 Sara Joseph
B009 Mike brunton

I dette nøgle i dbms eksempel har vi to tabeller, teach og afdeling på en skole. Der er dog ingen måde at se, hvilket søgningsarbejde i hvilken afdeling.

I denne tabel kan vi, ved at tilføje fremmednøglen i Deptcode til lærernavnet, skabe en relation mellem de to tabeller.

Lærer-id Afd.kode Fnavn Lnavn
B002 002 David Warner
B017 002 Sara Joseph
B009 001 Mike brunton

Dette koncept er også kendt som reference Integrity.

Hvad er den sammensatte nøgle?

SAMMENSAT NØGLE har to eller flere attributter, der giver dig mulighed for unikt at genkende en specifik post. Det er muligt, at hver kolonne måske ikke er unik i sig selv i databasen. Men når den kombineres med den eller de andre kolonner, bliver kombinationen af ​​sammensatte nøgler unik. Formålet med den sammensatte nøgle i databasen er entydigt at identificere hver post i tabellen.

Eksempel:

Ordre nummer PorductID Produktnavn Antal
B005 JAP102459 Mus 5
B005 DKT321573 USB 10
B005 OMG446789 LCD-skærm 20
B004 DKT321573 USB 15
B002 OMG446789 laserprinter 3

I dette eksempel kan OrderNo og ProductID ikke være en primær nøgle, da de ikke entydigt identificerer en post. En sammensat nøgle af ordre-id og produkt-id kunne dog bruges, da den entydigt identificerede hver post.

Hvad er den sammensatte nøgle?

KOMPOSIT NØGLE er en kombination af to eller flere kolonner, der unikt identificerer rækker i en tabel. Kombinationen af ​​kolonner garanterer unikhed, selvom individuel unikhed ikke er garanteret. Derfor kombineres de for entydigt at identificere poster i en tabel.

Forskellen mellem den sammensatte og den sammensatte nøgle er, at enhver del af den sammensatte nøgle kan være en fremmednøgle, men den sammensatte nøgle kan eller måske ikke en del af den fremmede nøgle.

Hvad er en surrogatnøgle?

SURROGAT NØGLER er En kunstig nøgle, der har til formål at identificere hver post entydigt, kaldes en surrogatnøgle. Denne form for delvis nøgle i dbms er unik, fordi den oprettes, når du ikke har nogen naturlig primær nøgle. De giver ingen mening til dataene i tabellen. Surrogatnøgle i DBMS er normalt et heltal. En surrogatnøgle er en værdi, der genereres lige før posten indsættes i en tabel.

Fnavn Efternavn Starttidspunkt End Time
Anne Smith 09:00 18:00
Jack Francis 08:00 17:00
Anna McLean 11:00 20:00
vist William 14:00 23:00

Ovenfor, givet eksempel, vist vagttidspunkter for de forskellige medarbejdere. I dette eksempel er en surrogatnøgle nødvendig for at identificere hver medarbejder entydigt.

Surrogat nøgler ind sql er tilladt hvornår

  • Ingen egenskab har parameteren for den primære nøgle.
  • I tabellen, når den primære nøgle er for stor eller kompliceret.

Forskellen mellem primærnøgle og fremmednøgle

Følgende er hovedforskellen mellem primærnøgle og fremmednøgle:

Primærnøgle Fremmed nøgle
Hjælper dig med entydigt at identificere en post i tabellen. Det er et felt i tabellen, der er den primære nøgle i en anden tabel.
Primær nøgle accepterer aldrig null-værdier. En fremmednøgle kan acceptere flere nulværdier.
Primær nøgle er et klynget indeks, og data i DBMS-tabellen er fysisk organiseret i sekvensen af ​​det klyngede indeks. En fremmednøgle kan ikke automatisk oprette et indeks, klynget eller ikke-klynget. Du kan dog manuelt oprette et indeks på fremmednøglen.
Du kan have den enkelte primære nøgle i en tabel. Du kan have flere fremmednøgler i en tabel.

Resumé

  • Hvad er nøglen i DBMS: En nøgle i DBMS er en attribut eller et sæt attributter, som hjælper dig med at identificere en række(tuple) i en relation(tabel)
  • Taster ind RDBMS giver dig mulighed for at etablere en relation mellem og identificere relationen mellem tabeller
  • Otte typer nøgler i DBMS er Super, Primary, Candidate, Alternative, Foreign, Compound, Composite og Surrogate Key.
  • En supernøgle er en gruppe af enkelte eller flere nøgler, som identificerer rækker i en tabel.
  • En kolonne eller gruppe af kolonner i en tabel, som hjælper os til entydigt at identificere hver række i den tabel, kaldes en primær nøgle
  • Alle de forskellige nøgler i DBMS, som ikke er primærnøgler, kaldes en alternativ nøgle
  • En supernøgle uden gentagen attribut kaldes kandidatnøgle
  • En sammensat nøgle er en nøgle, som har mange felter, som giver dig mulighed for unikt at genkende en specifik post
  • En nøgle, som har flere attributter til entydigt at identificere rækker i en tabel, kaldes en sammensat nøgle
  • En kunstig nøgle, der har til formål at identificere hver post entydigt, kaldes en surrogatnøgle
  • Primær nøgle accepterer aldrig null-værdier, mens en fremmednøgle kan acceptere flere null-værdier.