Přejít na hlavní obsah

Primary key a foreign key-rozdíly a principy použití v databázích

  • Matouš Tichá
  • Postupy

Primary key a foreign key - to jsou dva důležité pojmy v databázích, které pomáhají vytvořit vazby mezi tabulkami a zajistit integritu dat. Primární klíč (primary key) je jedinečný identifikátor každého záznamu v tabulce, který umožňuje jednoznačnou identifikaci tohoto záznamu.

Hlavní vlastností primárního klíče je jeho jedinečnost a neměnnost. Také se obvykle automatizuje, což znamená, že každý nový záznam v tabulce bude mít jedinečnou hodnotu primárního klíče větší než předchozí záznam.

Foreign key (externí klíč) je pole v tabulce, které odkazuje na primární klíč jiné tabulky. Tímto způsobem můžeme pomocí externího klíče navázat spojení mezi dvěma tabulkami a zajistit integritu dat.

Pomocí externího klíče můžeme vytvářet vztahy mezi tabulkami, jako je propojení dat z tabulky objednávky s daty z tabulky zákazníci. V tomto případě, pokud je v tabulce "Zákazníci" odstraněn záznam s určitým id, pak budou automaticky odstraněny všechny položky v tabulce "Objednávky" s tímto id, aby nedošlo k narušení integrity dat.

Primary key: definice a účel

Primary key může být reprezentován jedním nebo více sloupci (poli) v tabulce a musí být jedinečný pro každý řádek. Poskytuje jedinečnost dat, což umožňuje identifikovat a přistupovat k jednotlivým záznamům v tabulce pomocí tohoto klíče.

Primary key lze také použít k zajištění referenční integrity v databázi. Může být spojen s jinými tabulkami prostřednictvím foreign key nebo externího klíče, což umožňuje vytvářet vztahy mezi tabulkami.

Primary key je obvykle vybrán mezi dostupnými sloupci v tabulce, které splňují podmínky jedinečnosti a neměnnosti. Pokud je například v tabulce sloupec "ID", který je jedinečný pro každý řádek a nelze jej změnit, může být tento sloupec použit jako primární klíč.

Použití primary key umožňuje zlepšit efektivitu práce s databází, urychlit provádění dotazů a zajistit integritu dat. Při navrhování databáze je důležité správně vybrat a identifikovat primary key, aby byla zajištěna efektivní a spolehlivá práce s daty.

Příklad tabulky s primary key
IDNázevVěk
1Ivan25
2Anna30
3Petr35

V tomto příkladu je sloupec " ID " primary key tabulky, protože každá hodnota je jedinečná a neměnná. Díky tomuto klíči lze snadno identifikovat každý záznam v tabulce.

Foreign key: podstata a aplikace

Hlavním cílem použití externího klíče je zajistit integritu dat a podporu vazeb mezi tabulkami. Pomocí externího klíče je možné vytvářet komunikaci mezi daty v různých tabulkách, což umožňuje vytvářet složitější datové struktury.

Vnější klíč je definován uvnitř tabulky, která odkazuje na jinou tabulku. Ukazuje primární klíč v této jiné tabulce. Externí klíč tak propojuje záznamy v jedné tabulce s odpovídajícími záznamy v jiné tabulce.

Použití externího klíče může být velmi užitečné při navrhování databáze. Umožňuje budovat komplexní datové struktury, zajišťuje konektivitu a integritu dat. Externí klíče také usnadňují proces vyhledávání a třídění dat a umožňují optimalizaci databázových dotazů, což zlepšuje výkon.

Při používání externího klíče je třeba vzít v úvahu, že vyžaduje dodržování určitých pravidel a omezení. Například hodnota externího klíče musí odpovídat hodnotě primárního klíče v propojené tabulce. Pokud záznam s touto hodnotou chybí, může dojít k chybě nebo narušení integrity dat.

Tabulka objednávekTabulka zákazníků
order_id (primární klíč)customer_id (primární klíč)
order_datecustomer_name
customer_id (externí klíč)customer_email

Například v tabulce objednávek externí klíč customer_id propojuje každý záznam s příslušným záznamem v tabulce zákazníků. Díky tomu jsou komunikace mezi daty udržovány na úrovni databáze.