Referanseintegritet
Referanseintegritet er en egenskap av data som sier at alle referanser er gyldige. I forbindelse med relasjonsdatabaser kreves det at dersom en verdi av en attributt (kolonne) av en relasjon (tabell) refererer til en verdi av en annet attributt (enten i samme eller en annen relasjon), så må også den refererte verdien eksistere.[1]
For at referanseintegritet skal holde i en relasjonsdatabase kan hver kolonne i en tabell det er erklært en fremmednøkkel bare inneholde nullverdier eller verdier fra en foreldretabell sin primærnøkkel eller en kandidatnøkkel.[2] Når en fremmednøkkelverdi brukes må den med andre ord referere til en gyldig, eksisterende primærnøkkel i en foreldretabell. Dersom man for eksempel sletter en oppføring som inneholder en verdi som er referert til av en fremmednøkkel i en annen tabell vil dette bryte referanseintegriteten. Noen databasehåndteringssystemer for relasjonsdatabaser (RDBMS) kan håndheve referanseintegritet, vanligvis enten ved å også slette sekundærnøkkel-rader for å opprettholde integritet, eller ved å returnere en feilmelding og ikke utføre slettingen. Hvilken metode som brukes kan bestemmes av en referanseintegritetsbegrensning definert i en dataordbok.
Adjektivet "referanse" beskriver handlingen som en fremmednøkkel utfører ved å henvise til en lenket kolonne i en annen tabell. Enkelt sagt garanterer referanseintegritet at målet som det refereres til vil bli funnet. Mangel på referanseintegritet i en database kan føre til at relasjonsdatabaser returnerer ufullstendige data, vanligvis uten indikasjon på feil.
Se også
- Entitetsintegritet
- Surrogatnøkkel
- Endringstreg dimensjon
Referanser
- v
- d
- r
- Database
- Relasjonsdatabase
- Objektdatabase
- Objektrelasjonell database
- XML
- Databasehåndteringssystem (DBMS)
- Databasemotor
- Datavarehus
- Relasjonsalgebra
- Serialiserbarhet
- Historie
- Nøkler
- Normalisering
- Tabell
- SQL
- NoSQL
- XQuery
- ODBC
- JDBC
- Perl DBI
- Select
- Insert
- Update
- Delete
- Join
- Union
- Create
- Drop
- Utløser
- Visning
- Lagret prosedyre