Vad är nycklar i DBMS?
NYCKLAR i DBMS är ett attribut eller en uppsättning attribut som hjälper dig att identifiera en rad (tuple) i en relation (tabell). De låter dig hitta förhållandet mellan två tabeller. Tangenterna hjälper dig att identifiera en rad i en tabell med 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å bra för att hitta unik post eller rad från tabellen.
Exempel:
Anställnings-ID | Förnamn | Efternamn |
11 | Andrew | Johnson |
22 | Tom | Trä |
33 | Alex | Frisk |
I ovanstående exempel är medarbetar-ID en primär nyckel eftersom det unikt identifierar en anställdspost. I denna tabell kan ingen annan anställd ha samma medarbetar-ID.
I den här handledningen lär du dig:
- Vad är nycklar?
- Varför behöver vi en nyckel?
- Olika nycklar i databashanteringssystemet
- Vad är Super Key?
- Vad är primär nyckel?
- Vad är alternativ nyckel?
- Vad är kandidatnyckel?
- Vad är utländsk nyckel?
- Vad är sammansatt nyckel?
- Vad är kompositnyckel?
- Vad är Surrogate Key?
- Skillnaden mellan primärnyckel och främmande nyckel
Varför behöver vi en nyckel?
Här är några anledningar till att använda SQL-nyckel i DBMS-systemet.
- Nycklar hjälper dig att identifiera valfri rad i en tabell. I en verklig applikation kan en tabell innehålla tusentals poster. Dessutom kan posterna dupliceras. Nycklar säkerställer att du unikt kan identifiera en tabellpost trots dessa utmaningar.
- Låter dig skapa en relation mellan och identifiera förhållandet mellan tabeller
- Hjälper dig att upprätthålla identitet och integritet i relationen.
Typer av nycklar i databashanteringssystemet
Det finns huvudsakligen sju olika typer av nycklar i DBMS och varje nyckel har olika funktioner:
- Super Key - En supernyckel är en grupp med enkla eller flera tangenter som identifierar rader i en tabell.
- Primär nyckel - ä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 tuplar i en tabell. Kandidatnyckel ä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.
- Foreign Key - är en kolumn som skapar en relation mellan två tabeller. Syftet med utländska nycklar är att bibehålla dataintegriteten och tillåta navigering mellan två olika instanser av en enhet.
- Compound Key - har två eller flera attribut som låter dig unikt känna igen en specifik post. Det är möjligt att varje kolumn kanske inte är unik i sig själv i databasen.
- Composite Key - En konstgjord nyckel som syftar till att identifiera varje post unikt kallas en surrogatnyckel. Den här typen av nyckel är unik eftersom de skapas när du inte har någon naturlig primärnyckel.
- Surrogatnyckel - En konstgjord nyckel som syftar till att identifiera varje post unikt kallas en surrogatnyckel. Den här typen av nyckel är unik eftersom de skapas när du inte har någon naturlig primärnyckel.
Vad är Super-tangenten?
En supernyckel är en grupp med enkla eller flera nycklar som identifierar rader i en tabell. En supernyckel kan ha ytterligare attribut som inte behövs för unik identifiering.
Exempel:
EmpSSN | EmpNum | Empname |
9812345098 | AB05 | Visad |
9876512345 | AB06 | Roslyn |
199937890 | AB07 | James |
I ovanstående exempel är EmpSSN och EmpNum-namn supernycklar.
Vad är en primär nyckel?
PRIMÄR NYCKEL är en kolumn eller grupp av kolumner i en tabell som unikt identifierar varje rad i den tabellen. Primärnyckeln kan inte vara en duplikat, 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är nyckel.
Regler för att definiera primärnyckel:
- Två rader kan inte ha samma primära nyckelvärde
- Det måste för varje rad att ha ett primärt nyckelvärde.
- Det primära nyckelfältet kan inte vara null.
- Värdet i en primär nyckelkolumn kan aldrig ändras eller uppdateras om någon främmande nyckel hänvisar till den primära nyckeln.
Exempel:
I följande exempel är StudID
en primär nyckel.
StudID | Rulla nr | Förnamn | Efternamn | E-post |
1 | 11 | Tom | Pris | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
2 | 12 | Nick | Wright | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
3 | 13 | Dana | Natan | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
Vad är alternativnyckeln?
ALTERNATE KEYS ä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.
Exempel:
I denna tabell är StudID, Roll No, Email kvalificerade för att bli en primär nyckel. Men eftersom StudID är den primära nyckeln blir Roll No, Email den alternativa nyckeln.
StudID | Rulla nr | Förnamn | Efternamn | E-post |
1 | 11 | Tom | Pris | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
2 | 12 | Nick | Wright | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
3 | 13 | Dana | Natan | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
Vad är en kandidatnyckel?
CANDIDATE KEY är en uppsättning attribut som unikt identifierar tuplar i en tabell. Kandidatnyckel är en supernyckel utan upprepade attribut. Primärnyckeln ska väljas från kandidatnycklarna. Varje tabell måste ha minst en kandidatnyckel. En tabell kan ha flera kandidatnycklar men endast en enda primärnyckel.
Egenskaper hos kandidatnyckel:
- Den måste innehålla unika värden
- Kandidatnyckeln kan ha flera attribut
- Får inte innehålla nollvärden
- Den ska innehålla minimifält för att säkerställa unikhet
- Identifiera varje post unikt i en tabell
Exempel: I den angivna tabellen är Stud ID, Roll No och e-post kandidatnycklar som hjälper oss att identifiera studentposten i tabellen.
StudID | Rulla nr | Förnamn | Efternamn | E-post |
1 | 11 | Tom | Pris | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
2 | 12 | Nick | Wright | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
3 | 13 | Dana | Natan | Den här e-postadressen är skyddad från spamrobotar. Du måste ha Javascript aktiverat för att kunna se det. |
Vad är utländsk nyckel?
UTLÄNDSK NYCKEL är en kolumn som skapar en relation mellan två tabeller. Syftet med utländska nycklar är att bibehålla dataintegriteten och tillåta navigering mellan två olika instanser av en enhet. Det fungerar som en korsreferens mellan två tabeller eftersom det refererar till den primära nyckeln till en annan tabell.
Exempel:
DeptCode | Avdelningsnamn |
001 | Vetenskap |
002 | engelsk |
005 | Dator |
Lärar-ID | Fname | Lname |
B002 | David | Warner |
B017 | Sara | Joseph |
B009 | Mikrofon | Brunton |
I den här nyckeln i dbms-exempel har vi två tabeller, undervisning och avdelning i en skola. Det finns dock inget sätt att se vilken sökning som fungerar i vilken avdelning.
I den här tabellen kan vi skapa en relation mellan de två tabellerna genom att lägga till den främmande nyckeln i Deptcode till lärarens namn.
Lärar-ID | DeptCode | Fname | Lname |
B002 | 002 | David | Warner |
B017 | 002 | Sara | Joseph |
B009 | 001 | Mikrofon | Brunton |
Detta koncept är också känt som referensintegritet.
Vad är sammansatt nyckel?
COMPOUND KEY har två eller flera attribut som låter dig unikt känna igen en specifik post. Det är möjligt att varje kolumn kanske inte är unik i sig själv i databasen. Men när de kombineras med den andra kolumnen eller kolumnerna blir kombinationen av sammansatta tangenter unik. Syftet med den sammansatta nyckeln i databasen är att identifiera varje post i tabellen på ett unikt sätt.
Exempel:
Beställningsnr | PorductID | produktnamn | Kvantitet |
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är nyckel eftersom den inte identifierar en post unikt. En sammansatt nyckel för order-ID och produkt-ID kan dock användas eftersom den identifierar varje post unikt.
Vad är kompositnyckeln?
COMPOSITE KEY är en kombination av två eller flera kolumner som unikt identifierar rader i en tabell. Kombinationen av kolumner garanterar unikhet, men individuell unikhet garanteras inte. 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 sammansatt nyckel kan vara en främmande nyckel, men den sammansatta nyckeln kan eller kanske inte är en del av den främmande nyckeln.
Vad är en surrogatnyckel?
SURROGATE KEYS är en konstgjord nyckel som syftar till att identifiera varje post på ett unikt sätt kallas en surrogatnyckel. Denna typ av partiell nyckel i dbms är unik eftersom den skapas när du inte har någon naturlig primärnyckel. De ger ingen mening med data i tabellen. Surrogatnyckel är vanligtvis ett heltal. En surrogatnyckel är ett värde som genereras precis innan posten införs i en tabell.
Fname | Efternamn | Starttid | Sluttid |
Anne | Smed | 09:00 | 18:00 |
Jack | Francis | 08:00 | 17:00 |
Anna | McLean | 11:00 | 20:00 |
Visad | Willam | 14:00 | 23:00 |
Ovan, givet exempel, visade skifttider för olika anställda. I det här exemplet behövs en surrogatnyckel för att identifiera varje anställd.
Surrogatnycklar i sql är tillåtna när
- Ingen egendom har parametern för den primära nyckeln.
- I tabellen när primärnyckeln är för stor eller komplicerad.
Skillnaden mellan primärnyckel och främmande nyckel
Primärnyckel | Främmande nyckel |
Hjälper dig att identifiera en post i tabellen. | Det är ett fält i tabellen som är den primära nyckeln till en annan tabell. |
Primär nyckel accepterar aldrig nollvärden. | En främmande nyckel kan acceptera flera nollvärden. |
Primär nyckel är ett klustrat index och data i DBMS-tabellen är fysiskt organiserade i sekvensen för det klustrade indexet. | En främmande nyckel kan inte automatiskt skapa ett index, grupperat eller icke-klustrat. Du kan dock skapa ett index manuellt på den utländska nyckeln. |
Du kan ha den enda primära nyckeln i en tabell. | Du kan ha flera främmande nycklar i en tabell. |
Sammanfattning
- En nyckel i SQL är ett attribut eller en uppsättning attribut som hjälper dig att identifiera en rad (tuple) i en relation (tabell)
- Med DBMS-nycklar kan du skapa en relation mellan och identifiera förhållandet mellan tabeller
- Sju typer av DBMS-nycklar är Super, Primary, Candidate, Alternate, Foreign, Compound, Composite och Surrogate Key.
- En supernyckel är en grupp med enkla eller flera tangenter 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är nyckel
- Alla nycklar som inte är primärnyckel kallas en alternativ nyckel
- En supernyckel utan upprepat attribut kallas kandidatnyckel
- En sammansatt nyckel är en nyckel som har många fält som låter dig unikt 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 identifiera varje post unikt kallas en surrogatnyckel
- Primär nyckel accepterar aldrig nollvärden medan en främmande nyckel kan acceptera flera nollvärden.