Systém správy databází (DBMS) je nezbytný v podnikání, bankovnictví, leteckých společnostech, telekomunikacích a na univerzitách, protože jde o efektivní a spolehlivou metodu pro vytváření, ukládání a správu databázových dat. Relational Database Management System (RDBMS) je pokročilá forma DMBS strukturovaná zejména pro relační databáze.
Klíče jsou životně důležité součásti schématu relační databáze, protože vytvářejí spojení mezi dvěma různými tabulkami a jednoznačně identifikují jakýkoli řádek dat v tabulce. Klíče však mají konkrétnější význam než jen udržování odkazů.
Pomáhá shromažďovat konkrétní data z mnoha řádků, což by bylo složité nebo dokonce nemožné, kdyby nebylo klíčů. Dva primární klíče, které pomáhají efektivně vytvářet a identifikovat propojení mezi relačními databázemi, jsou primární klíče a cizí klíče.
Key Takeaways
- Primární klíč je jedinečný identifikátor pro každý záznam v databázové tabulce, který zajišťuje, že žádné dva řádky nemají stejnou hodnotu primárního klíče.
- Cizí klíč je pole v tabulce, které odkazuje na primární klíč jiné tabulky, vytváří vztah mezi těmito dvěma tabulkami a udržuje referenční integritu.
- Hlavním rozdílem mezi primárními klíči a cizími klíči je jejich funkce v rámci databáze, přičemž primární klíče poskytují záznamům jedinečný identifikátor. Naproti tomu cizí klíče vytvářejí vztahy mezi tabulkami odkazováním na primární klíče v jiných tabulkách.
Primární klíč vs cizí klíč
Primární klíč je výběr sloupců, který je jedinečný a určuje sadu řádků v konkrétní tabulce, a také atribut, který má ID, které je považováno za kandidátský klíč. Cizí klíč je a sloupec v tabulce, která slouží jako propojení mezi dvěma různými tabulkami a obsahuje hodnoty null.
Tabulka nemůže být relační databáze tabulky bez primárního klíče. Protože primární klíče jednoznačně identifikují konkrétní řádek dat, dva nebo více řádků nemůže mít podobné primární klíče. Naopak cizí klíče se používají k navázání vztahu mezi záznamy dvou různých tabulek.
Srovnávací tabulka
Parametr srovnání | Primární klíč | Cizí klíč |
---|---|---|
Duplicitní hodnoty | Primární klíče neumožňují, aby dva řádky měly stejné hodnoty. | Cizí klíče umožňují, aby dva řádky měly stejné hodnoty. |
Vložení | Do primárních klíčů lze vkládat hodnoty, i když cizí klíč tuto hodnotu nemá. | V cizích klíčích nelze vkládat hodnoty, pokud hodnoty nejsou přítomny v primárním klíči. |
Rozsah | Každý řádek v tabulce relační databáze může mít pouze jeden primární klíč. | Tabulka relační databáze může mít více cizích klíčů. |
Klastrovaný index | Primární klíče mají ve výchozím nastavení seskupený index. | Cizí klíče nemají seskupený index. |
vymazání | Když má být hodnota odstraněna, je třeba zajistit, aby hodnota stále nebyla přítomna v referenční tabulce cizích klíčů. | Když má být hodnota smazána, lze to snadno provést z cizích klíčů. |
Dočasné tabulky | Primární klíče lze definovat na dočasné tabulce. | V dočasné tabulce nelze definovat cizí klíče. |
Co je primární klíč?
Primární klíč odkazuje na konkrétní výběr sloupců, který jednoznačně určuje sadu řádků v tabulce. Primární klíč je jediný atribut, který má jedinečné ID a je také považován za kandidátský klíč.
Hodnota primárního klíče by nikdy neměla kolísat ani se měnit, protože primární klíč charakterizuje důležitost v databáze. Takže změna hodnoty by měla za následek spoustu zmatků.
Primární klíč je klastrově indexovaný, což znamená, že všechny řádky tabulky jsou seřazeny. Primární klíč je definován hlavně na dočasné tabulce.
Co je cizí klíč?
Cizí klíč odkazuje na sloupec v databázové tabulce, který poskytuje propojení mezi dvěma tabulkami. Pokud má tabulka 1 primární klíč tabulky 2, je tento atribut cizí klíč.
Na rozdíl od primárních klíčů mohou cizí klíče obsahovat hodnoty null, protože to nepomůže identifikovat rozdíl ve vztahu, protože primární klíče již tuto část úlohy provedly. Cizí klíče mohou také přijímat duplicitní hodnoty na rozdíl od primárního klíče a mohou mít v databázi mnoho nebo více cizích klíčů, protože cizí klíče mohou mít různé atributy.
V dočasné tabulce nelze definovat cizí klíče. Při přidávání hodnoty do sloupce cizího klíče je třeba zajistit, aby dohoda byla přítomna v primárním klíči a při mazání hodnot z cizího klíče neexistovalo žádné omezení.
Hlavní rozdíly mezi primárním klíčem a cizím klíčem
- Primární klíče nedovolte, aby dva řádky v databázové tabulce měly duplicitní hodnoty. Cizí klíče povolit, aby dva řádky v databázové tabulce měly duplicitní hodnoty.
- V atributu primární klíče, lze hodnoty vložit do tabulky, i když cizí klíč tuto hodnotu ve svém sloupci nemá. V cizí klíče atribut, nelze slevy vložit do tabulky, pokud hodnoty nejsou v databázi primárního klíče.
- A primární klíč atribut může mít ve své tabulce pouze jeden rozsah primárních klíčů. A cizí klíč atribut může mít ve své tabulce mnoho cizích klíčů.
- Primární klíče mají seskupený index, což znamená, že všechny řádky v databázovém vztahu jsou seřazeny. Cizí klíče nemají automatický seskupený index, ale lze je provést ručně.
- Pod primární klíče, hodnotu lze z referenční tabulky odstranit tak, že zajistíte, aby dohoda nebyla přítomna v referenční tabulce cizího klíče. Pod cizími klíči lze hodnoty smazat bez závad, protože nezáleží na tom, zda je hodnota stále aktuální v referenční tabulce primárních klíčů.
- Primární klíče lze určit na dočasné tabulce. Cizí klíče nelze určit nebo vynutit na dočasné tabulce.
- https://dl.acm.org/doi/abs/10.14778/1920841.1920944?casa_token=HgKaHPnYA9oAAAAA:_NYpWs4jzN-BI4lT9bWA73EPTvOBtYxJzXB7RpKVXGvZRc0htXpsv742IQMGSsjiuA1f_E_80IN18O0
- https://ieeexplore.ieee.org/abstract/document/994756/
Poslední aktualizace: 11. června 2023
Sandeep Bhandari získal bakalářský titul v oboru počítačů na Thapar University (2006). Má 20 let zkušeností v oblasti technologií. Má velký zájem o různé technické obory, včetně databázových systémů, počítačových sítí a programování. Více si o něm můžete přečíst na jeho bio stránka.
Zvláště užitečná je srovnávací tabulka. Poskytuje jasné a stručné shrnutí kontrastních charakteristik primárních klíčů a cizích klíčů.
V tomto článku chybí podrobné vysvětlení primárních a cizích klíčů. Selhává při řešení určitých pokročilých operací databázových dotazů, které zahrnují tyto klíče.
Vidím, že článek dělá dobře, když stanoví, že primární klíče zajišťují jedinečnost v databázové tabulce tím, že nepovolují duplicitní hodnoty.
Autor by se mohl ponořit do rozsáhlejší analýzy konkrétních aplikací primárních a cizích klíčů v různých průmyslových prostředích.
Nesouhlasím. Databázová tabulka může být tabulkou relační databáze bez primárního klíče. Je to považováno za špatnou praxi, ale ne nemožné.
Autor odvádí špatnou práci v pochopení role primárních klíčů. Skutečnost, že by se jejich hodnoty neměly měnit, je zcela mylná. V případě potřeby mohou být aktualizovány.
Tento článek dobře vysvětluje důležitost primárního klíče a cizího klíče v DBMS. Jedná se o nepostradatelné součásti databázové architektury, které zajišťují spolehlivost dat.
Autor odvádí skvělou práci při zdůrazňování rozdílů mezi primárními a cizími klíči a jejich významu v rámci databáze. Velmi informativní.
Věřím, že tento článek odvádí dobrou práci při zjednodušení konceptu primárních a cizích klíčů. To přináší několik zasvěcených bodů.
Systémy pro správu databází jsou mízou organizací. Pomáhají při organizaci a poskytování důležitých dat účinným a spolehlivým způsobem.