Skillnad mellan utländsk nyckel och primär nyckel

De nyckelskillnad mellan utländsk nyckel och primär nyckel är det främmande nyckel är en kolumn eller en uppsättning kolumner som hänvisar till en primär nyckel eller en kandidatnyckel till en annan tabell medan primär nyckel är en kolumn eller en uppsättning kolumner som kan användas för att unikt identifiera en rad i ett bord.

En kolumn eller en uppsättning kolumner som kan användas för att identifiera eller komma åt en rad eller en rad rader i en databas kallas en nyckel. En primär nyckel i en relationsdatabas är en kombination av kolumner i ett bord som unikt identifierar en rad i tabellen. Utländsk nyckel i en relationsdatabas är ett fält i ett bord som matchar den primära nyckeln till en annan tabell. Den främmande nyckeln används för att korsa referens tabeller.

INNEHÅLL

1. Översikt och nyckelskillnad
2. Vad är utländsk nyckel
3. Vad är Primär nyckel
4. Jämförelse vid sida vid sida - Utländsk nyckel och Primär nyckel i tabellform
5. Sammanfattning

Vad är utländsk nyckel?

Utländsk nyckel är en referensbegränsning mellan två tabeller. Den identifierar en kolumn eller en uppsättning kolumner i ett bord, kallad referensbordet som refererar till en uppsättning kolumner i en annan tabell, kallad referensbordet. Den utländska nyckeln eller kolumnerna i referenstabellen måste vara den primära nyckeln eller en kandidatnyckel (en nyckel som kan användas som primärnyckel) i den refererade tabellen. Dessutom tillåter utländska nycklar att länka data över flera tabeller. Därför kan den främmande nyckeln inte innehålla värden som inte visas i tabellen som den refererar till. Då hjälper referensen från den främmande nyckeln till att länka informationen i flera tabeller, vilket skulle bli nödvändigt med normaliserade databaser. Flera rader i referenstabellen kan referera till en enda rad i den refererade tabellen.

Figur 01: Utländsk nyckelmappning

I ANSI SQL-standard definierar FOREIGN KEY-begränsningen utländska nycklar. Vidare är det möjligt att definiera de främmande nycklarna när man skapar bordet självt. En tabell kan ha flera främmande nycklar, och de kan referera till olika tabeller.

Vad är Primär nyckel?

Primär nyckel är en kolumn eller en kombination av kolumner som unikt definierar en rad i en tabell i en relationsdatabas. En tabell kan ha högst en primär nyckel. Primärtangent fullgör den implicita NULL NULL-begränsningen. Därför kan en kolumn med primär nyckel inte ha NULL-värden i den. Primär nyckel kan vara ett normalt attribut i tabellen som garanteras vara unik, till exempel ett socialt säkerhetsnummer, eller det kan vara ett unikt värde som genereras av databashanteringssystemet, såsom en globalt unik identifikator (GUID) i Microsoft SQL Server.

Figur 02: Primär nyckel

Dessutom definierar PRIMARY KEY-begränsningen i ANSI SQL Standard primära nycklar. Det är också möjligt att definiera en primär nyckel när bordet skapas. Utöver det tillåter SQL primärnyckel att bestå av en eller flera kolumner, och varje kolumn som ingår i primärnyckeln är implicit definierad till att inte vara NULL. Men vissa databashanteringssystem kräver att primärtangentkolumnerna uttryckligen inte är NULL.

Vad är skillnaden mellan utländsk nyckel och primär nyckel?

 Utländsk nyckel vs Primär nyckel

Utländsk nyckel är en kolumn eller en grupp kolumner i en relationsdatabasstabell som ger en koppling mellan data i två tabeller. Primärtangent är en särskild databas för relationsdatabas eller en kombination av flera kolumner som gör det möjligt att unikt identifiera alla tabellposter.
NULL
Utländsk nyckel accepterar NULL-värde. Primärt nyckelvärde kan inte vara NULL.
Antal nycklar
Tabellen kan ha flera främmande nycklar. Tabellen kan bara ha en primär nyckel.
  Duplicering
Tuples kan ha ett dubbelt värde för en utländsk nyckelattribut. Två tuplar i en relation kan inte ha dubbla värden för en primärnyckelattribut.

Sammanfattning - Utländsk nyckel vs Primär nyckel

Skillnaden mellan utländsk nyckel och primär nyckel är att utländsk nyckel är en kolumn eller en uppsättning kolumner som hänvisar till en primär nyckel eller en kandidatnyckel i en annan tabell medan primär nyckel är en kolumn eller en uppsättning kolumner som kan användas för att unikt identifiera en rad i ett bord.

Referens:

1. "Utländsk nyckel". Wikipedia, Wikimedia Foundation, 12 maj 2018. Tillgänglig här  
2. "Primär nyckel" Wikipedia, Wikimedia Foundation, 3 april 2018. Tillgänglig här 

Image Courtesy:

1.'Foreign-Key-Mapping'By MovGP0 - eget arbete, (CC BY-SA 3.0) via Commons Wikimedia  
2.'Erd-ID-as-primary-key'By UniCollab - eget arbete, (CC BY-SA 3.0) via Commons Wikimedia