Primær nøgle vs fremmed nøgle: forskel og sammenligning

Databasestyringssystem (DBMS) er essentielt i erhvervslivet, banker, flyselskaber, telekommunikation og universiteter, fordi det er en effektiv og pålidelig metode til at oprette, gemme og administrere databasedata. Relational Database Management System (RDBMS) er den avancerede form for DMBS, der er struktureret specielt til relationelle databaser.

Nøgler er vitale komponenter i det relationelle databaseskema, fordi de etablerer en forbindelse mellem to forskellige tabeller og entydigt identificerer enhver række data i en tabel. Nøgler har dog mere specifik betydning end blot at vedligeholde links.

Det hjælper med at indsamle specifikke data fra adskillige rækker, hvilket ville have været indviklet eller endda umuligt, hvis det ikke var for nøgler. De to primære nøgler, der hjælper med at etablere og identificere links mellem relationelle databaser effektivt, er primære nøgler og fremmednøgler.

Nøgleforsøg

  1. En primærnøgle er en unik identifikator for hver post i en databasetabel, hvilket sikrer, at ikke to rækker har den samme primærnøgleværdi.
  2. En fremmednøgle er et felt i en tabel, der refererer til den primære nøgle i en anden tabel, der etablerer en relation mellem de to tabeller og opretholder referentiel integritet.
  3. Den største forskel mellem primærnøgler og fremmednøgler er deres funktion i en database, hvor primærnøgler giver en unik identifikator for poster. I modsætning hertil skaber fremmednøgler relationer mellem tabeller ved at henvise til primærnøgler i andre tabeller.

Primær nøgle vs fremmed nøgle

En primær nøgle er et valg af kolonner, der er unikke og bestemmer rækken af ​​en bestemt tabel, og også en attribut, der har et ID, der ses som en kandidatnøgle. Fremmednøgle er en kolonne i en tabel, der fungerer som et link mellem to forskellige tabeller, og den indeholder null-værdier.

Primær nøgle vs udenlandsk nøgle 2

En tabel kan ikke være en relationel database tabel uden den primære nøgle. Fordi primærnøgler entydigt identificerer en specifik række af data, kan to eller flere rækker ikke have lignende primærnøgler. I modsætning hertil bruges fremmednøgler til at etablere en relation mellem posterne i to forskellige tabeller.


 

Sammenligningstabel

Parameter for sammenligningPrimærnøgleFremmed nøgle
Dublerede værdierPrimære nøgler tillader ikke, at to rækker har de samme værdier.Fremmednøgler tillader de to rækker at have samme værdier.
IndsættelseI primærnøgler kan man indsætte værdier, selvom fremmednøglen ikke har den værdi.I fremmednøgler kan man ikke indsætte værdier, hvis værdierne ikke er til stede i primærnøglen.
RangeHver række i relationsdatabasetabellen kan kun have én primær nøgle.En relationel databasetabel kan have flere fremmednøgler.
Klynget indeksPrimære nøgler har som standard et klynget indeks.Fremmednøgler har ikke et klynget indeks.
sletningNår en værdi skal slettes, bør man sørge for, at værdien stadig ikke er til stede i referencetabellen for fremmednøgler.Når en værdi skal slettes, kan man nemt gøre det fra fremmednøgler.
Midlertidige bordePrimære nøgler kan defineres på en midlertidig tabel.Fremmednøgler kan ikke defineres på en midlertidig tabel.

 

Hvad er primærnøgle?

En primær nøgle refererer til et bestemt valg af kolonner, der entydigt bestemmer rækkerne i en tabel. En primær nøgle er en enkelt attribut, der har et unikt id, og som også betragtes som en kandidatnøgle.

Værdien af ​​en primær nøgle bør aldrig svinge eller ændres, fordi den primære nøgle karakteriserer betydning i database. Så at ændre værdien ville resultere i en masse forvirring.

Den primære nøgle er klyngeindekseret, hvilket betyder, at alle tabelrækkerne er sorteret. Den primære nøgle er hovedsageligt defineret på en midlertidig tabel.

primærnøgle
 

Hvad er fremmednøgle?

En fremmednøgle refererer til en kolonne i en databasetabel, der giver et link mellem to tabeller. Når tabel 1 har en primær nøgle til tabel 2, er denne attribut fremmednøglen.

I modsætning til primærnøgler kan fremmednøgler indeholde null-værdier, da det ikke hjælper med at identificere en forskel i relationen, fordi primærnøgler allerede har udført denne del af jobbet. Fremmednøgler kan også acceptere duplikerede værdier, i modsætning til den primære nøgle og kan have mange eller flere fremmednøgler i en database, da fremmednøgler kan have forskellige attributter.

Fremmednøgler kan ikke defineres på en midlertidig tabel. Mens man tilføjer en værdi i kolonnen med fremmednøgle, skal man sikre sig, at aftalen er til stede i den primære nøgle, og at der ikke er nogen begrænsning, når man sletter værdier fra en fremmednøgle.

fremmed nøgle

Vigtigste forskelle mellem primær nøgle og fremmed nøgle

  1. Primære nøgler Tillad ikke, at to rækker i en databasetabel har duplikerede værdier. Udenlandske nøgler tillade to rækker i en databasetabel at have dublerede værdier.
  2. I attributten til primære nøgler, kan værdier indsættes i tabellen, selvom fremmednøglen ikke har den værdi i sin kolonne. I den udenlandske nøgler attribut, kan rabatter ikke indsættes i tabellen, hvis værdierne ikke er i primærnøgledatabasen.
  3. A primærnøgle attribut kan kun have ét område af primære nøgler i sin tabel. EN fremmed nøgle attribut kan have mange fremmednøgler i sin tabel.
  4. Primære nøgler har et klynget indeks, hvilket betyder, at alle rækkerne i databaserelationen er sorteret. Udenlandske nøgler har ikke et automatisk klynget indeks, men kan gøres manuelt.
  5. Under primære nøgler, kan en værdi slettes fra referencetabellen ved at sikre, at handlen ikke er til stede i referencetabellen for fremmednøgle. Under fremmednøgler kan værdierne slettes uden fejl, da det er ligegyldigt, om værdien stadig er aktuel i referencetabellen for primærnøgler.
  6. Primære nøgler kan bestemmes på en midlertidig tabel. Udenlandske nøgler kan ikke bestemmes eller håndhæves på et midlertidigt bord.

Referencer
  1. https://dl.acm.org/doi/abs/10.14778/1920841.1920944?casa_token=HgKaHPnYA9oAAAAA:_NYpWs4jzN-BI4lT9bWA73EPTvOBtYxJzXB7RpKVXGvZRc0htXpsv742IQMGSsjiuA1f_E_80IN18O0
  2. https://ieeexplore.ieee.org/abstract/document/994756/

Sidst opdateret: 11. juni 2023

prik 1
En anmodning?

Jeg har brugt så meget på at skrive dette blogindlæg for at give dig værdi. Det vil være meget nyttigt for mig, hvis du overvejer at dele det på sociale medier eller med dine venner/familie. DELING ER ♥️

10 tanker om "Primær nøgle vs udenlandsk nøgle: forskel og sammenligning"

  1. Sammenligningstabellen er særlig nyttig. Det giver en klar og kortfattet opsummering af de kontrasterende egenskaber ved primærnøgler og fremmednøgler.

    Svar
  2. Denne artikel mangler en dybdegående forklaring af primære og fremmede nøgler. Det mislykkes i at adressere visse avancerede databaseforespørgselsoperationer, der involverer disse nøgler.

    Svar
  3. Jeg kan se, at artiklen gør det godt i at fastslå, at primærnøgler sikrer entydighed i en databasetabel ved ikke at tillade duplikerede værdier.

    Svar
  4. Forfatteren kunne dykke ned i en mere omfattende analyse af de specifikke anvendelser af primære og fremmede nøgler i forskellige brancher.

    Svar
  5. Jeg er uenig. En databasetabel kan være en relationel databasetabel uden den primære nøgle. Det anses for at være en dårlig praksis, men ikke umulig.

    Svar
  6. Forfatteren gør et dårligt stykke arbejde med at forstå de primære nøglers rolle. At deres værdier ikke skal ændres er helt forkert. De kan blive opdateret, når det er nødvendigt.

    Svar
  7. Denne artikel forklarer godt vigtigheden af ​​primærnøgle og fremmednøgle i et DBMS. Disse er uundværlige komponenter i databasearkitekturen, der sikrer datapålidelighed.

    Svar
  8. Forfatteren gør et godt stykke arbejde med at fremhæve forskellene mellem primærnøgler og fremmednøgler og deres betydning i en database. Meget informativ.

    Svar
  9. Jeg mener, at denne artikel gør et godt stykke arbejde med at forenkle begrebet primære og fremmede nøgler. Det giver nogle indsigtsfulde pointer.

    Svar
  10. Databasestyringssystemer er livsnerven i organisationer. De hjælper med at organisere og levere vigtige data på en effektiv og pålidelig måde.

    Svar

Efterlad en kommentar

Vil du gemme denne artikel til senere? Klik på hjertet i nederste højre hjørne for at gemme i din egen artikelboks!