
Entitet og referanseintegritet er viktig i relasjonsdatabaser.
Entitetsintegritet og referanseintegritet er to former for dataintegritet som er spesielt viktige i relasjonsdatabaser. Relasjonsdatabaser bryter lagringen av data ned i elementer som vanligvis må slås sammen igjen for å gi meningsfulle resultater. Uten garantier for disse to typene integritet, ville data bli droppet eller duplisert.
Relasjonelle databaser
Relasjonsdatabasestyringssystemer representerer den mest implementerte databasemodellen i verden i dag. Relasjonsmodellen er avhengig av "normaliserte" data. Normalisering er en prosess som utføres i databasedesignprosessen for å sikre at tabellene å holde dataene har ikke repeterende data og kan ikke skape repetisjon eller tap når de slås sammen sammen
Dagens video
Referansedata
De fleste databaseapplikasjoner bruker to forskjellige typer data: transaksjonsdata og referansedata. Som et eksempel vil en veldig grunnleggende lagerdatabase registrere lagerbevegelsestransaksjoner. Se for deg en transaksjonspost som: Vare 1010, Antall 5, Retning ut. En leder kan ønske å se en rapport over disse dataene med varenavnet og varebeskrivelsen samt varenummeret. Disse detaljene er attributter til en annen enhet som beskriver hver del i lageret. Dette er en referansetabell.
Normalisering
I eksemplet med lagerdatabasen trenger transaksjonstabellen bare å inneholde en identifikator for delen. Hvis detaljer som navn og beskrivelse ble holdt i transaksjonstabellen, ville dette føre til unødvendig gjentakelse. Enhver vare har alltid samme navn og beskrivelse, og disse detaljene er knyttet til delen og ikke transaksjonen. I dette eksempelsystemet holdes detaljdetaljene i en annen tabell. Hver post i tabellen må identifiseres unikt av ett felt, eller en kombinasjon av felt, kalt primærnøkkelen. Å dele ut gjentatte grupper kalles «normalisering».
Entitetsintegritet
I eksemplet på lagerdatabasen skal primærnøkkelen til deletabellen være et attributt som unikt identifiserer hver post. Dette er enhetsintegritet. Generelt er numeriske felt bedre for en primærnøkkel enn tekstfelt. I deletabellen vil det beste feltet for primærnøkkelen være varenummeret. Organisasjonen kan selge en rekke produkter med samme navn, som «liten skiftenøkkel». Varenummeret vil alltid være unikt per vare, og dette sikrer enhetsintegritet for deletabellen. Hvis flere poster hadde samme primærnøkkelverdi, referer til detaljer fra denne tabellen ved å slå den sammen med transaksjonstabell ville føre til at transaksjonsposter dupliseres for å matche hver post med den samme identifikator.
Referanseintegritet
Referensiell integritet sikrer at koblingen mellom transaksjonstabellen og deletabellen er riktig utformet. I transaksjonstabellen danner varenummeret fremmednøkkelen, som er attributtet som kobler til primærnøkkelen til deletabellen. Kun varenumre oppført i deletabellen kan vises i transaksjonstabellen. Dette er referanseintegritet. Hvis transaksjonstabellen inneholder et varenummer som ikke også er i deletabellen, vil det å slå sammen tabellene føre til at transaksjoner med det manglende varenummeret blir utelatt fra resultatene.