Hjem Databaser Hvad er forskellen mellem en sammensat nøgle, primær nøgle og fremmed nøgle?

Hvad er forskellen mellem en sammensat nøgle, primær nøgle og fremmed nøgle?

Anonim

Q:

Hvad er forskellen mellem en sammensat nøgle, primær nøgle og fremmed nøgle?

EN:

En primær nøgle er defineret som en nøgle eller databasekolonne, som identificerer hver række i en databasetabel unikt. En sammensat nøgle er et sæt med mere end en nøgle, der tilsammen identificerer hver post.

En fremmed nøgle er på den anden side en nøgle i en eller anden tabel, der entydigt identificerer rækker i en anden tabel - eller med andre ord en nøgle, der sporer til en primær nøgle i en anden tabel.

Et eksempel ville være en liste over boliger på et ejendomsmarked. I en velordnet database skal der være en primær nøgle, der identificerer hver post unikt. Hvordan dette fungerer kan have at gøre med databladens sofistikerede.

I nogle tilfælde kan husene muligvis kun identificeres entydigt med et prioritetsnummer - alle andre data (byer, gader, husnumre) er ikke unikke for hver post. Prioritetsnummeret ville være den primære nøgle. Antag dog, at en MLS-ejendomsnoteringsteknologi tildeler sine egne unikke numre til posterne i tabellen. Derefter vil der være to nøgler, som udviklere muligvis identificerer som "kandidatnøgler": pantnummeret og MLS-nummeret. En af dem vil kvalificere sig som den "primære nøgle" i hvad nogle vil betragte som en vilkårlig måde.

En sammensat nøgle ville således være kombinationen af ​​to nøgler: for eksempel kan kombinationen af ​​husnummer og gade muligvis betegnes som en sammensat nøgle, i betragtning af at markedslisterne er lokale. I så fald, når nogen søger ved hjælp af både husnummer og gade, skulle de kun få en enkelt post tilbage.

I mellemtiden, hvis der er en nøgle i en sammenkoblet tabel, for eksempel en køberens tabel, der refererer til den primære nøgle, vil det være en fremmed nøgle.

Hvad er forskellen mellem en sammensat nøgle, primær nøgle og fremmed nøgle?