Referenční integrita: Porovnání verzí

Smazaný obsah Přidaný obsah
přidaný odkaz
JAnDbot (diskuse | příspěvky)
Řádek 3:
Referenční integrita se definuje [[cizí klíč|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 niž 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ími klíči nějakého záznamu v nadřízené tabulce, nebo [[NULL]].
 
== Jak se projevuje referenční integrita ==
* 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 ==
* 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í klíč|primárním klíčem]]).
* z tabulky poštovních směrovacích čísel nelze záznam s konkrétním poštovním směrovacím číslem odstranit, pokud existuje alespoň jeden podnik, který toto poštovní směrovací číslo používá
 
== Související články ==
* [[relační databáze]]
* [[primární klíč]]
* [[cizí klíč]]
 
== Externí odkazy ==
Řádek 27:
[[ja:参照整合性]]
[[nl:Referentiële integriteit]]
[[no:Referanseintegritet]]
[[pt:Integridade referencial]]
[[ru:Ссылочная целостность]]
[[sr:Референцијални интегритет]]