A hivatkozási integritás egy relációs adatbázis idegen kulcsai értékeinek helyessége .
A hivatkozási integritás fenntartásának, illetve biztosításának feladata az idegenkulcs-értékek helyességének megsértésének megelőzése vagy kiküszöbölése az adatbázis módosítása során az idegen kulcs értékeinek lehetőség szerinti javításával, vagy a szerkesztési művelet megszakításával, ha ilyen javítás történik. nem lehetséges.
A relációs adatbázisban különböző kapcsolatokban tárolt adatok közötti kapcsolatokat idegen kulcsok segítségével hozzuk létre - az A relációból származó sor és a B reláció egy meghatározott sora közötti kapcsolat létrehozásához az elsődleges kulcs értékét a reláció tuplejának attribútumaiba írjuk . Az A reláció ezt (és általános esetben az értékpotenciálkulcsot ) biztosította a B reláció célsorának . Így mindig lehetséges két művelet végrehajtása:
A relációs adatbázisban található hivatkozások miatt lehetőség nyílik a tények túlzott duplikáció nélkül, azaz normalizált formában történő tárolására. A hivatkozási integritás a következőképpen szemléltethető:
Adott egy idegen kulccsal összekapcsolt A és B relációpár. A B reláció elsődleges kulcsa a B.key attribútum . Az A reláció B - re hivatkozó idegen kulcsa az Ab attribútum . Az A és B relációpárra vonatkozó referenciaintegritás akkor következik be, ha a feltétel teljesül: az A reláció minden sorához tartozik a B reláció megfelelő sora , vagyis egy olyan sor, amelynek ( B.kulcs = Ab ) van.
Egy adatbázis akkor rendelkezik a hivatkozási integritás tulajdonságával, ha bármely idegen kulccsal kapcsolatos kapcsolatpár rendelkezik a hivatkozási integritás feltételével.
Ha a fenti feltétel nem teljesül, az adatbázis hivatkozási integritássértéssel rendelkezik . Egy ilyen adatbázist nem lehet normálisan működtetni, mert megszakadnak benne a logikai kapcsolatok az egymástól függő tények között. A hivatkozási integritás megsértésének azonnali eredménye az, hogy egy érvényes lekérdezés nem mindig adja meg a helyes eredményt.
A DBMS-eknek van egy mechanizmusa a hivatkozási integritás automatikus fenntartására. Minden olyan művelet, amely megváltoztatja a tábla adatait, automatikus hivatkozási integritás-ellenőrzést vált ki. Ahol:
Adatbázis | |
---|---|
Fogalmak |
|
Objektumok |
|
Kulcsok | |
SQL |
|
Alkatrészek |