Rekommenderas, 2024

Redaktionen

Skillnad mellan primärtangent och unik nyckel

Vi har redan studerat olika typer av nycklar som används i databasen och scheman i de föregående artiklarna, nämligen skillnad mellan primärtangent och utländsk nyckel. I denna artikel skiljer vi primärtangent och unik nyckel. Både primärtangenten och den unika nyckeln används för att identifiera en tupel unikt och verkställer unikheten i en kolumn eller kombination av en kolumn.

Den väsentliga skillnaden mellan primärnyckel och unik nyckel är att primärnyckel inte accepterar NULL-värden medan NULL-värden är tillåtna inom Unika nyckelbegränsningar.

Jämförelsediagram

Grunder för jämförelsePrimärnyckelUnik nyckel
GrundläggandeDen används som en unik identifierare för varje rad i ett bord.Det bestämmer också en rad, som inte definieras som en primär nyckel.
NULL värde acceptansPrimärnyckel accepterar inte NULL-värden.Unik accepterar ett NULL-värde.
Antal nycklar som kan definieras i tabellenEndast en primär nyckelMer än en
IndexSkapar klusterindexSkapar icke-grupperade index

Definition av Primär nyckel

En kolumn kan kallas som en primär nyckel i tabellen om den unikt identifierar varje tupel (rad) i den tabellen. Det styrker integritetsbegränsningar till bordet. Endast en primärnyckel är tillåten i en tabell. Den primära nyckeln accepterar inte dubbletter och NULL-värden. Den primära nyckeln väljs med omsorg, där förändringarna kan förekomma sällan, innebär att en primär nyckel i ett bord ändras väldigt sällan.

Låt oss förstå begreppet primär nyckel med hjälp av ett bord. Här skapar vi ett bord som heter Studentbord, som har attribut som Roll_number, Namn, Batch, Telefonnummer, Citizen_ID.

I det angivna exemplet kan attributets rollnummer aldrig ha samma och NULL-värde, eftersom varje student inskrev i ett universitet med en unik Roll_number. Inga två elever kan ha samma Roll-nummer, och varje rad i ett bord är unikt identifierad med elevernas rullnummer. Så, vi kan göra attributet Roll_number som en primär nyckel i det här fallet.

En primär nyckel kan refereras av utländsk nyckel. Det skapar ett unikt klusterindex på bordet. I ett grupperat index sorteras och raderas dataserierna i en tabell eller vyer utifrån de viktigaste värdena. Det kan bara finnas ett grupperat index i ett bord, orsaken till detta är att en datarader i ett bord kan sorteras i endast en order.

Definition av unik nyckel

På samma sätt som en primär nyckel identifierar unika nyckelbegränsningar också ett individuellt tupel unikt i ett förhållande. Men det finns vissa skillnader mellan dem. En tabell kan ha mer än en unik nyckel. Unika nyckelbegränsningar kan bara acceptera ett NULL-värde för en kolumn.

Låt oss förstå detta med det liknande exemplet, där vi hade ett Studentbord med Roll_number, Namn, Batch, Telefonnummer och Citizen_ID attribut. Rulnummerattributet tilldelas den primära nyckeln.

Här kan Citizen_ID tilldelas unika begränsningar där varje post i en Citizen_ID-kolumn ska vara unik, inte duplicera eftersom varje medborgare i ett land måste ha sitt unika identifikationsnummer. Men om en elev migrerar från ett annat land, skulle han eller hon inte ha Citizen_ID och posten kan ha ett NULL-värde eftersom en NULL är tillåten i den unika begränsningen.

Unika begränsningar refereras också av den främmande nyckeln. Den kan användas när någon vill genomdriva begränsningar på en kolumn och en grupp kolumner som inte är en primär nyckel. Till skillnad från den primära nyckeln genererar den det icke-grupperade indexet . Icke-grupperade index har en distinkt struktur från dataraderna. Varje nyckelvärdesinmatning i den pekar på dataraden som innehåller nyckelvärdet, varför det använder pekare.

Viktiga skillnader mellan primärtangent och unik nyckel

  1. När ett attribut som deklareras som primärtangent, accepterar det inte NULL-värden. Å andra sidan, när ett attribut som deklareras som Unikt kan det acceptera ett NULL-värde.
  2. En tabell kan bara ha primär nyckel medan det kan finnas flera unika begränsningar på ett bord.
  3. Ett klusterindex skapas automatiskt när en primär nyckel är definierad. Däremot genererar Unik nyckel det icke-grupperade indexet.

Slutsats

Primär nyckel och unik nyckel båda tjänar syftet med en unik identifierare för raderna i ett bord med de unika värdena i en kolumn eller grupp av kolumner. Dessa nyckelbegränsningar är signifikant differentierade där varje tabell kan ha högst en primär nyckel medan ett bord kan ha flera unika nycklar som inte är primära.

Top