EN - FR - DE - ES - IT - PT -

LexiconDream

🔗 Fremmednøkkel

Et felt som kobler poster i én tabell til en annen tabell.

Fremmednøkkel

En fremmednøkkel kobler poster i én tabell til poster i en annen. En ordretabell har et customer_id-felt. Dette feltet er en fremmednøkkel som peker til kundetabellens primærnøkkel. Koblingen sikrer at hver ordre tilhører en reell kunde. Uten den kan ordrer referere til kunder som ikke finnes. Databasen håndhever forholdet.

Fremmednøkler gjør mer enn å dokumentere relasjoner. De håndhever referensiell integritet. Hvis du prøver å sette inn en ordre med en customer_id som ikke finnes i kundetabellen, avviser databasen den. Hvis du prøver å slette en kunde som har ordrer, blokkerer databasen enten slettingen eller kaskaderer den avhengig av regelen. Denne håndhevingen forhindrer foreldreløse poster og inkonsistente data. Fremmednøkler hjelper også med spørreytelsen. Databasen kan bruke relasjonen til å optimalisere sammenføyninger. Ikke alle databaser håndhever fremmednøkler. Noen NoSQL-databaser overlater referensiell integritet til applikasjonen. Det gir utviklere mer fleksibilitet, men også mer ansvar. Applikasjonen må sørge for at referansene er gyldige. Hvis det mislykkes, blir dataene inkonsistente. Fremmednøkler er en begrensning. Begrensninger er upraktiske inntil de forhindrer en katastrofe.

Regler for fremmednøkkel

En fremmednøkkel er en lenke og en garanti. Lenken forbinder tabeller. Garantien holder dem konsistente.

Comments

No comments yet. Be the first to share a thought.

Leave a comment