Předpoklad: Model relační databáze
Klíče jsou jedním z nejdůležitějších prvků v relační databázi pro udržení vztahu mezi tabulkami a také pomáhají při jedinečné identifikaci dat z tabulky. Primární klíč je klíč, který pomáhá při jedinečné identifikaci n-tice databáze, zatímco cizí klíč je klíč, který se používá k identifikaci vztahu mezi tabulkami prostřednictvím primárního klíče jedné tabulky, která je primárním klíčem, jedna tabulka funguje jako cizí klíč do jiné tabulky. Nyní si je oba proberme trochu podrobněji.
Herečka Sai Pallavi
Co je primární klíč?
Primární klíč se používá k zajištění toho, aby data v konkrétním sloupci byla jedinečná. Sloupec nemůže mít hodnoty NULL. Je to buď existující sloupec tabulky nebo sloupec, který je specificky generován databází podle definované sekvence.
Příklad: STUD_NO a oba STUD_PHONE jsou kandidátskými klíči pro vztah STUDENT, ale STUD_NO lze vybrat jako primární klíč (pouze jeden z mnoha kandidátských klíčů).
Stůl STUDENT
| STUD_NO | STUD_NAME | STUD_PHONE | STUD_STATE | STUD_COUNT | STUD_AGE |
|---|---|---|---|---|---|
| 1 | RAM | 9865278251 | Haryana | Indie | dvacet |
| 2 | RAM | 9655470231 | Paňdžáb | Indie | 19 |
| 3 | SUJIT | 7514290359 | Rádžasthán | Indie | 18 |
| 4 | SURESH | 8564103258 | Paňdžáb | Indie | dvacet jedna |
Stůl STUDENT_COURSE
java valueof enum
| STUD_NO | COURSE_NO | NÁZEV KURZU |
|---|---|---|
| 1 | C1 | DBMS |
| 2 | C2 | Počítačové sítě |
| 1 | C2 | Počítačové sítě |
Co je cizí klíč?
Cizí klíč je sloupec nebo skupina sloupců v tabulce relační databáze, která poskytuje propojení mezi daty ve dvou tabulkách. Je to sloupec (nebo sloupce), který odkazuje na sloupec (nejčastěji primární klíč) jiné tabulky.
Příklad: STUD_NO ve STUDENT_COURSE je cizí klíč k STUD_NO ve vztahu STUDENT.
java stack
Rozdíl mezi primárním a cizím klíčem
| PRIMÁRNÍ KLÍČ | CIZÍ KLÍČ |
|---|---|
| Primární klíč se používá k zajištění toho, aby data v konkrétním sloupci byla jedinečná. | Cizí klíč je sloupec nebo skupina sloupců v tabulce relační databáze, která poskytuje propojení mezi daty ve dvou tabulkách. |
| Jednoznačně identifikuje záznam v tabulce relační databáze. | Odkazuje na pole v tabulce, které je primárním klíčem jiné tabulky. |
| V tabulce je povolen pouze jeden primární klíč. | Zatímco v tabulce je povoleno více než jeden cizí klíč. |
| Jde o kombinaci omezení UNIQUE a Not Null. | Může obsahovat duplicitní hodnoty a tabulku v relační databázi. |
| Nepovoluje hodnoty NULL. | Může také obsahovat hodnoty NULL. |
| Jeho hodnotu nelze odstranit z nadřazené tabulky. | Jeho hodnotu lze z podřízené tabulky odstranit. |
| Omezení může být implicitně definováno na dočasných tabulkách. | Omezení nelze definovat v místních nebo globálních dočasných tabulkách. |
Závěr
V tomto článku jsme v podstatě zmínili primární klíč a cizí klíč a rozdíly mezi nimi. Oba klíče, ať už primární nebo cizí, hrají důležitou roli v systému správy databáze. Primární klíč obsahuje jedinečné hodnoty, zatímco cizí klíč obsahuje hodnoty, které odkazují na primární klíče. Hlavní charakteristickou vlastností primárního klíče je, že jej nelze opakovat, je jedinečný. Mezi jejich funkcemi jsou určité rozdíly, protože primární klíče určují řádek v tabulce a cizí klíč určuje vztah mezi tabulkami.
FAQ
1. Kolik typů klíčů je v modelu relační databáze?
- Klíč kandidáta
- Primární klíč
- Super klíč
- Alternativní klíč
- Cizí klíč
- Složený klíč
Další informace naleznete na Typy klíčů v relačním modelu.