DBMS-nycklar: Kandidat-, Super-, Primär-, Utländska nyckeltyper med exempel

Vad är nycklar i DBMS?

NYCKLAR i DBMS är ett attribut eller en uppsättning attribut som hjälper dig att identifiera en rad(tupel) i en relation(tabell). De låter dig hitta relationen mellan två tabeller. Nycklar hjälper dig att unikt identifiera en rad i en tabell genom en kombination av en eller flera kolumner i den tabellen. Nyckeln är också användbar för att hitta unik post eller rad från tabellen. Databasnyckel är också användbar för att hitta unik post eller rad från tabellen.

Exempelvis:

Anställnings-ID Förnamn Efternamn
11 Andrew Johnson
22 Tom Trä
33 Alex Hale

I det ovan givna exemplet är anställds-ID en primärnyckel eftersom det unikt identifierar en anställdspost. I den här tabellen kan ingen annan anställd ha samma anställds-ID.

Varför behöver vi en nyckel?

Här är några anledningar till att använda sql-nyckeln i DBMS-systemet.

  • Nycklar hjälper dig att identifiera valfri rad med data i en tabell. I en verklig applikation kan en tabell innehålla tusentals poster. Dessutom kan journalerna dupliceras. Nycklar i RDBMS säkerställer att du unikt kan identifiera en tabellpost trots dessa utmaningar.
  • Låter dig upprätta en relation mellan och identifiera relationen mellan tabeller
  • Hjälp dig att upprätthålla identitet och integritet i relationen.

Typer av nycklar i DBMS (Database Management System)

Det finns huvudsakligen åtta olika typer av nycklar i DBMS och varje nyckel har sina olika funktioner:

  1. Supernyckeln
  2. Primärnyckel
  3. Kandidatnyckel
  4. Alternativ nyckel
  5. Främmande nyckel
  6. Sammansatt nyckel
  7. Sammansatt nyckel
  8. Surrogatnyckel

Låt oss titta på var och en av nycklarna i DBMS med exempel:

  • Supernyckel – En supernyckel är en grupp av enstaka eller flera nycklar som identifierar rader i en tabell.
  • Primärnyckel - är en kolumn eller grupp av kolumner i en tabell som unikt identifierar varje rad i den tabellen.
  • Kandidatnyckel – är en uppsättning attribut som unikt identifierar tupler i en tabell. Candidate Key är en supernyckel utan upprepade attribut.
  • Alternativ nyckel – är en kolumn eller grupp av kolumner i en tabell som unikt identifierar varje rad i den tabellen.
  • Främmande nyckel - är en kolumn som skapar en relation mellan två tabeller. Syftet med främmande nycklar är att upprätthålla dataintegritet och möjliggöra navigering mellan två olika instanser av en enhet.
  • Sammansatt nyckel – har två eller flera attribut som gör att du unikt kan känna igen en specifik post. Det är möjligt att varje kolumn inte är unik i sig själv i databasen.
  • Sammansatt nyckel – är en kombination av två eller flera kolumner som unikt identifierar rader i en tabell. Kombinationen av kolumner garanterar unikhet, även om individuell unikhet inte garanteras.
  • surrogatnyckel – En konstgjord nyckel som syftar till att unikt identifiera varje post kallas en surrogatnyckel. Den här typen av nycklar är unika eftersom de skapas när du inte har någon naturlig primärnyckel.

Vad är Supernyckeln?

En supernyckel är en grupp av enstaka eller flera nycklar som identifierar rader i en tabell. En supernyckel kan ha ytterligare attribut som inte behövs för unik identifiering.

Exempelvis:

EmpSSN EmpNum Empname
9812345098 AB05 Visad
9876512345 AB06 Roslyn
199937890 AB07 James

I det ovan givna exemplet är EmpSSN och EmpNum-namn supernycklar.

Vad är en primärnyckel?

PRIMÄRNYCKEL in DBMS är en kolumn eller grupp av kolumner i en tabell som unikt identifierar varje rad i den tabellen. Den primära nyckeln kan inte vara en dubblett, vilket betyder att samma värde inte kan visas mer än en gång i tabellen. En tabell kan inte ha mer än en primärnyckel.

Regler för att definiera primärnyckel:

  • Två rader kan inte ha samma primärnyckelvärde
  • Det måste för varje rad ha ett primärnyckelvärde.
  • Det primära nyckelfältet kan inte vara null.
  • Värdet i en primärnyckelkolumn kan aldrig ändras eller uppdateras om någon främmande nyckel refererar till den primärnyckeln.

Exempelvis:

I följande exempel, StudID är en primärnyckel.

StudID Rull nr Förnamn Efternamn E-post
1 11 Tom Pris abc@gmail.com
2 12 Nick Wright xyz@gmail.com
3 13 Dana Natan mno@yahoo.com

Vad är den alternativa nyckeln?

ALTERNATIVA NYCKLAR är en kolumn eller grupp av kolumner i en tabell som unikt identifierar varje rad i den tabellen. En tabell kan ha flera val för en primärnyckel men endast en kan ställas in som primärnyckel. Alla nycklar som inte är primärnyckel kallas en alternativ nyckel.

Exempelvis:

I den här tabellen är StudID, Roll No, Email kvalificerade att bli en primärnyckel. Men eftersom StudID är den primära nyckeln, blir Roll No, Email den alternativa nyckeln.

StudID Rull nr Förnamn Efternamn E-post
1 11 Tom Pris abc@gmail.com
2 12 Nick Wright xyz@gmail.com
3 13 Dana Natan mno@yahoo.com

Vad är en kandidatnyckel?

KANDIDATNYCKEL i SQL är en uppsättning attribut som unikt identifierar tupler i en tabell. Candidate Key är en supernyckel utan upprepade attribut. Den primära nyckeln bör väljas från kandidatnycklarna. Varje tabell måste ha minst en kandidatnyckel. En tabell kan ha flera kandidatnycklar men bara en enda primärnyckel.

Egenskaper för kandidatnyckel:

  • Den måste innehålla unika värden
  • Kandidatnyckel i SQL kan ha flera attribut
  • Får inte innehålla null-värden
  • Det bör innehålla minsta fält för att säkerställa unikhet
  • Identifiera varje post i en tabell unikt

Kandidatnyckel Exempel: I den givna tabellen är Stud ID, Roll No och e-post kandidatnycklar som hjälper oss att unikt identifiera studentposten i tabellen.

StudID Rull nr Förnamn Efternamn E-post
1 11 Tom Pris abc@gmail.com
2 12 Nick Wright xyz@gmail.com
3 13 Dana Natan mno@yahoo.com

Kandidatnyckel
Kandidatnyckel i DBMS

Vad är den främmande nyckeln?

FRÄMMANDE NYCKEL är en kolumn som skapar en relation mellan två tabeller. Syftet med främmande nycklar är att upprätthålla dataintegritet och möjliggöra navigering mellan två olika instanser av en enhet. Den fungerar som en korsreferens mellan två tabeller eftersom den refererar till primärnyckeln för en annan tabell.

Exempelvis:

Avdelningskod Avdelningens namn
001 Vetenskap
002 Engelska
005 Dator
Lärar-ID Fname Lname
B002 David Warner
B017 Sara Joseph
B009 Mikrofon Brunton

I den här nyckeln i dbms-exemplet har vi två tabeller, teach och institution i en skola. Det finns dock inget sätt att se vilket sökarbete på vilken avdelning.

I den här tabellen, genom att lägga till den främmande nyckeln i Deptcode till lärarens namn, kan vi skapa en relation mellan de två tabellerna.

Lärar-ID Avdelningskod Fname Lname
B002 002 David Warner
B017 002 Sara Joseph
B009 001 Mikrofon Brunton

Detta koncept är också känt som referens Integrity.

Vad är den sammansatta nyckeln?

SAMMANSTÄLLD NYCKEL har två eller flera attribut som gör att du unikt kan känna igen en specifik post. Det är möjligt att varje kolumn inte är unik i sig själv i databasen. Men när den kombineras med den eller de andra kolumnerna blir kombinationen av sammansatta nycklar unik. Syftet med den sammansatta nyckeln i databasen är att unikt identifiera varje post i tabellen.

Exempelvis:

Beställningsnr PorductID Produktnamn Antal
B005 JAP102459 Mus 5
B005 DKT321573 USB 10
B005 OMG446789 LCD-skärm 20
B004 DKT321573 USB 15
B002 OMG446789 Laserskrivare 3

I det här exemplet kan OrderNo och ProductID inte vara en primärnyckel eftersom de inte unikt identifierar en post. Däremot kan en sammansatt nyckel av order-ID och produkt-ID användas eftersom den unikt identifierade varje post.

Vad är den sammansatta nyckeln?

KOMPOSITNYCKEL är en kombination av två eller flera kolumner som unikt identifierar rader i en tabell. Kombinationen av kolumner garanterar unikhet, även om individuell unikhet inte garanteras. Därför kombineras de för att unikt identifiera poster i en tabell.

Skillnaden mellan sammansatt och sammansatt nyckel är att vilken del som helst av den sammansatta nyckeln kan vara en främmande nyckel, men den sammansatta nyckeln kan eller kanske inte en del av den främmande nyckeln.

Vad är en surrogatnyckel?

SURROGATNYCKLAR är En konstgjord nyckel som syftar till att unikt identifiera varje post kallas en surrogatnyckel. Den här typen av partiell nyckel i dbms är unik eftersom den skapas när du inte har någon naturlig primärnyckel. De ger ingen mening åt uppgifterna i tabellen. Surrogatnyckel i DBMS är vanligtvis ett heltal. En surrogatnyckel är ett värde som genereras precis innan posten infogas i en tabell.

Fname Efternamn Starttid Sluttid
anne Smith 09:00 18:00
jack Francis 08:00 17:00
anna McLean 11:00 20:00
Visad William 14:00 23:00

Ovan, givet exempel, visas skifttider för de olika anställda. I det här exemplet behövs en surrogatnyckel för att unikt identifiera varje anställd.

Surrogat knappar in sql är tillåtna när

  • Ingen egenskap har parametern för primärnyckeln.
  • I tabellen när primärnyckeln är för stor eller komplicerad.

Skillnaden mellan primärnyckel och främmande nyckel

Följande är huvudskillnaden mellan primärnyckel och främmande nyckel:

Primärnyckel Främmande nyckel
Hjälper dig att unikt identifiera en post i tabellen. Det är ett fält i tabellen som är primärnyckeln för en annan tabell.
Primärnyckel accepterar aldrig nollvärden. En främmande nyckel kan acceptera flera nollvärden.
Primärnyckeln är ett klustrat index och data i DBMS-tabellen är fysiskt organiserade i sekvensen av det klustrade indexet. En främmande nyckel kan inte automatiskt skapa ett index, klustrade eller icke-klustrade. Du kan dock manuellt skapa ett index på den främmande nyckeln.
Du kan ha den enda primära nyckeln i en tabell. Du kan ha flera främmande nycklar i en tabell.

Sammanfattning

  • Vad är nyckeln i DBMS: En nyckel i DBMS är ett attribut eller en uppsättning attribut som hjälper dig att identifiera en rad(tupel) i en relation(tabell)
  • Knappar in RDBMS låter dig upprätta en relation mellan och identifiera relationen mellan tabeller
  • Åtta typer av nyckel i DBMS är Super, Primary, Candidate, Alternate, Foreign, Compound, Composite och Surrogate Key.
  • En supernyckel är en grupp av enstaka eller flera nycklar som identifierar rader i en tabell.
  • En kolumn eller grupp av kolumner i en tabell som hjälper oss att unikt identifiera varje rad i den tabellen kallas en primärnyckel
  • Alla olika nycklar i DBMS som inte är primärnyckel kallas en alternativ nyckel
  • En supernyckel utan upprepade attribut kallas kandidatnyckel
  • En sammansatt nyckel är en nyckel som har många fält som gör att du unikt kan känna igen en specifik post
  • En nyckel som har flera attribut för att unikt identifiera rader i en tabell kallas en sammansatt nyckel
  • En konstgjord nyckel som syftar till att unikt identifiera varje post kallas en surrogatnyckel
  • Primärnyckel accepterar aldrig nollvärden medan en främmande nyckel kan acceptera flera nollvärden.

Dagligt Guru99-nyhetsbrev

Kickstarta dagen med de senaste och viktigaste AI-nyheterna som levereras just nu.