Skillnaden mellan främmande nyckel och primärnyckel

Innehållsförteckning:

Skillnaden mellan främmande nyckel och primärnyckel
Skillnaden mellan främmande nyckel och primärnyckel

Video: Skillnaden mellan främmande nyckel och primärnyckel

Video: Skillnaden mellan främmande nyckel och primärnyckel
Video: Primary & Foreign Keys 2024, Juli
Anonim

Nyckelskillnaden mellan främmande nyckel och primärnyckel är att främmande nyckel är en kolumn eller en uppsättning kolumner som refererar till en primärnyckel eller en kandidatnyckel i en annan tabell medan primärnyckel är en kolumn eller en uppsättning kolumner som kan användas för att unikt identifiera en rad i en tabell.

En kolumn eller en uppsättning kolumner som kan användas för att identifiera eller komma åt en rad eller en uppsättning rader i en databas kallas en nyckel. En primärnyckel i en relationsdatabas är en kombination av kolumner i en tabell som unikt identifierar en rad i tabellen. Främmande nyckel i en relationsdatabas är ett fält i en tabell som matchar primärnyckeln i en annan tabell. Den främmande nyckeln används för att korsa referenstabeller.

Skillnad mellan främmande nyckel och primär nyckel - Sammanfattning av jämförelse
Skillnad mellan främmande nyckel och primär nyckel - Sammanfattning av jämförelse
Skillnad mellan främmande nyckel och primär nyckel - Sammanfattning av jämförelse
Skillnad mellan främmande nyckel och primär nyckel - Sammanfattning av jämförelse

Vad är främmande nyckel?

Främmande nyckel är en referensrestriktion mellan två tabeller. Den identifierar en kolumn eller en uppsättning kolumner i en tabell, kallad referenstabell som refererar till en uppsättning kolumner i en annan tabell, kallad referenstabell. Den främmande nyckeln eller kolumnerna i referenstabellen måste vara primärnyckeln eller en kandidatnyckel (en nyckel som kan användas som primärnyckel) i den refererade tabellen. Dessutom tillåter främmande 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 att länka information i flera tabeller och detta skulle bli väsentligt med normaliserade databaser. Flera rader i referenstabellen kan referera till en enda rad i den refererade tabellen.

Skillnaden mellan främmande nyckel och primär nyckel
Skillnaden mellan främmande nyckel och primär nyckel
Skillnaden mellan främmande nyckel och primär nyckel
Skillnaden mellan främmande nyckel och primär nyckel

Figur 01: Mappning av främmande nyckel

I ANSI SQL-standarden definierar FOREIGN KEY-begränsningen främmande nycklar. Dessutom är det möjligt att definiera de främmande nycklarna när du skapar själva tabellen. En tabell kan ha flera främmande nycklar, och de kan referera till olika tabeller.

Vad är primärnyckel?

Primärnyckel ä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ärnyckel. Primärnyckeln upprätthåller den implicita NOT NULL-begränsningen. Därför kan en kolumn med primärnyckel inte ha NULL-värden i sig. Primärnyckel kan vara ett norm alt attribut i tabellen som garanterat är unikt såsom ett personnummer, eller så kan det vara ett unikt värde som genereras av databashanteringssystemet såsom en Globally Unique Identifier (GUID) i Microsoft SQL Server.

Nyckelskillnad mellan främmande nyckel och primärnyckel
Nyckelskillnad mellan främmande nyckel och primärnyckel
Nyckelskillnad mellan främmande nyckel och primärnyckel
Nyckelskillnad mellan främmande nyckel och primärnyckel

Figur 02: Primärnyckel

Dessutom definierar PRIMARY KEY-begränsningen i ANSI SQL Standard primärnycklar. Det är också möjligt att definiera en primärnyckel när du skapar tabellen. Utöver det tillåter SQL att primärnyckeln består av en eller flera kolumner, och varje kolumn som ingår i primärnyckeln är implicit definierad som NOT NULL. Men vissa databashanteringssystem kräver att primärnyckelkolumnerna uttryckligen INTE NULL.

Vad är skillnaden mellan främmande nyckel och primärnyckel?

Främmande nyckel kontra primärnyckel

Främmande nyckel är en kolumn eller grupp av kolumner i en relationsdatabastabell som ger en association mellan data i två tabeller. Primärnyckel är en speciell relationsdatabastabellkolumn eller en kombination av flera kolumner som gör det möjligt att unikt identifiera alla tabellposter.
NULL
Främmande nyckel accepterar NULL-värde. Primärnyckelvärdet kan inte vara NULL.
Antal nycklar
Tablet kan ha flera främmande nycklar. Tabell kan bara ha en primärnyckel.
Duplicering
Tuples kan ha ett dubblettvärde för ett främmande nyckelattribut. Två tupler i en relation kan inte ha dubbletter av värden för ett primärnyckelattribut.

Sammanfattning – Utländsk nyckel kontra primärnyckel

Skillnaden mellan främmande nyckel och primärnyckel är att främmande nyckel är en kolumn eller en uppsättning kolumner som refererar till en primärnyckel eller en kandidatnyckel i en annan tabell medan primärnyckel är en kolumn eller en uppsättning kolumner som kan användas för att unikt identifiera en rad i en tabell.

Rekommenderad: