Co je to cizí klíč?
databáze se skládají z tabulek, ve kterých jsou uložena data nebo informace. Zahraniční klíč je mechanismus v relační databázi, který umožňuje asociaci těchto tabulek nebo pro tabulky, aby měli vzájemný vztah. Existují jedinečné vlastnosti, které musí mít cizí klíč. Musí to být sloupec nebo skupina sloupců v tabulce, jejíž hodnoty vytvářejí vztah s hodnotami v jiné tabulce ve stejné databázi.
Zahraniční klíč zaručuje, že řádky v jedné tabulce odpovídají řádkům v jiné tabulce, čímž navázána vztahy s celou databází nebo odkazy. Tabulka obsahující cizí klíč je „dítě“ a druhou tabulkou je „rodič“. Je možné, že hodnota cizího klíče je nulová nebo prázdná a aby se skutečně odkazovala nebo se vztahovala k tomu, co je známé jako primární klíč tabulky, ve které je nalezen. Toto je známé jako sebereference.
Člověk musí dobře porozumět tomu, co je primární klíč, než se pokusíte plně porozumět konceptu zahraničních klíčů. Například, pokud jsou v databázi ukládáním informací o publikovaných knihách pro web, který prodává knihy, může být jednou tabulkou, která by mohla být tabulka vydavatelů a druhá tabulka knih. Tabulka vydavatelů by se mohla skládat ze dvou sloupců, primárního klíče, který je vždy jedinečný pro každý záznam a sloupec názvu vydavatele. Minimálně tři sloupce by tvořily tabulku knih, aby držely primární klíč nebo jedinečný identifikátor pro každou knihu, tituly knih a sloupec, kterým by byl navázán vztah s tabulkou vydavatelů. Tento sloupec by byl cizí klíč.
Primárním klíčem pro tabulku vydavatelů by mohlo být něco jako „Pub_ID“ s hodnotami: P01, P02, P03 atd. Vztah by byl vytvořen s tabulkou knih, pokud by obsahoval sloupec PUB_ID se stejnými hodnotami. To by byl cizí klíčLD vztahuje tuto dětskou tabulku zpět s rodičem - tabulkou vydavatelů.
Zahraniční klíč však může mít jiný název sloupce než nadřazený klíč, na který odkazuje. Při udržování referenční integrity je nezbytné zvukové porozumění fungování primárních a zahraničních klíčů. Velmi velké databáze, které jsou složeny z mnoha tabulek nebo které zahrnují tabulku propojení, představují více než jeden typ vztahu, což může komplikovat úkol pracovat se zahraničními klíči.