? Entity integritet og referentiel integritet er to former for dataintegritet , der er særligt vigtige i relationsdatabaser . Relationelle databaser bryde lagring af data ned i elementer, der sædvanligvis skal være forbundet sammen igen for at producere meningsfulde resultater . Uden garantier for disse to typer integritet, ville data bliver tabt eller kopieret. Relationelle databaser
relationelle database management systemer repræsenterer den mest udbredte implementeret database model i verden i dag. Den relationelle model bygger på "normal" data. Normalisering er en proces, der udføres i database design processen for at sikre , at de tabeller, der holder data ikke have gentagne data og kan ikke oprette gentagelse eller tab , når de er sammen
referencedata
< br >
fleste database applikationer bruge to forskellige typer af data : transaktionsdata og referencedata . Som et eksempel vil en meget grundlæggende varehusdatabase optage lagerflytningsordrer transaktioner. Forestil dig en transaktion rekord såsom : Konto 1010, Mængde 5, Direction Out . En leder kan ønske at se en rapport over disse data giver elementet navn og beskrivelsen af artiklen samt varenummeret . Disse oplysninger er attributter af en anden enhed, der beskriver hver enkelt del på lageret. Dette er en reference tabel.
Normalisering
varehusdatabasen eksempel transaktioner tabellen kun behøver at holde et id for den del . Hvis detaljer såsom navn og beskrivelse blev afholdt i transaktionerne tabellen , ville det medføre unødvendige gentagelser . Enhver genstand har altid det samme navn og beskrivelse , og disse oplysninger vedrører den del og ikke til transaktionen. I dette eksempel system, vil dele detaljerne holdes i en anden tabel . Hver post i tabellen skal identificeres entydigt ved et felt , eller en kombination af felter , kaldet den primære nøgle. Splitting ud gentagne grupper kaldes " normalisering ".
Entity Integrity
varehusdatabasen eksempel bør den primære nøgle i den dele tabellen være en attribut , der entydigt identificerer hver post . Dette er enhed integritet . Generelt numeriske felter er bedre for en primær nøgle end tekstfelter . I dele tabellen , ville den bedste felt til den primære nøgle være Varenummer. Organisationen kan sælge en bred vifte af produkter med samme navn , som " lille skruenøgle. " The Varenummer vil altid være unikke per post , og så dette sikrer enhed integritet for dele bordet. Hvis flere optegnelser havde samme primære nøgleværdi ville henvisninger detaljer fra denne tabel ved at slutte den til transaktionen tabellen forårsage transaktion optegnelser at duplikere med henblik på at matche med hver post med samme id.
Referentiel integritet
referentiel integritet sikrer, at forbindelsen mellem transaktioner bordet og dele tabellen er korrekt dannet. I transaktionen bordet danner varenummeret den fremmede nøgle , som er den egenskab , der linker til den primære nøgle i den dele tabellen . Kun varenumre opført i dele tabellen kan vises i transaktionen tabellen. Det er referentiel integritet . Hvis transaktionerne tabellen indeholder et punkt nummer, der ikke også i dele tabellen , forbinder tabeller sammen ville få transaktioner med det manglende element nummer, der skal lades ude af resultaterne.
< br >