Referenční integrita

Referenční integrita je nástroj databázového stroje, který pomáhá udržovat vztahy v relačně propojených databázových tabulkách.

Referenční integrita se definuje cizím klíčem, a to pro dvojici tabulek, nebo nad jednou tabulkou, která obsahuje na sobě závislá data (například stromové struktury). Tabulka, v níž je pravidlo uvedeno, se nazývá podřízená tabulka (používá se také anglický termín slave). Tabulka, jejíž jméno je v omezení uvedeno, je nadřízená tabulka (master). Pravidlo referenční integrity vyžaduje, aby pro každý záznam v podřízené tabulce, pokud tento obsahuje data vztahující se k nadřízené tabulce, odpovídající záznam v nadřízené tabulce existoval. To znamená, že každý záznam v podřízené tabulce musí v cizím klíči obsahovat hodnoty odpovídající primárnímu klíči nějakého záznamu v nadřízené tabulce, nebo NULL.

Jak se projevuje referenční integrita

editovat
  • Při přidání či změně záznamu v podřízené tabulce se kontroluje, zda stejná hodnota klíče existuje v nadřízené tabulce – porušení pravidla vyvolá chybu.
  • Při mazání nebo úpravě záznamů v nadřízené tabulce se kontroluje, zda v podřízené tabulce není záznam se stejnou hodnotou klíče – porušení pravidla může vyvolat chybu nebo úpravu dat v podřízené tabulky v souladu s definovanými akcemi.

Příklad

editovat
  • Při vkládání záznamu do tabulky, která obsahuje adresy podniků, se kontroluje, zda vložené poštovní směrovací číslo existuje v tabulce poštovních směrovacích čísel (směrovací číslo je v tabulce směrovacích čísel primárním klíčem).
  • Z tabulky poštovních směrovacích čísel nelze odstranit záznam s konkrétním poštovním směrovacím číslem, pokud existuje alespoň jeden podnik, který toto poštovní směrovací číslo používá.

Související články

editovat

Externí odkazy

editovat