Porovnávacia tabuľka
Základ pre porovnanie | Super kľúč | Kľúč kandidáta |
---|---|---|
základné | Jeden atribút alebo súbor atribútov, ktoré jednoznačne identifikujú všetky atribúty vo vzťahu, je super kľúč. | Správna podskupina super kľúča, ktorá je tiež super kľúčom, je kandidátsky kľúč. |
Jeden v druhom | Nie je povinné, aby všetky super kľúče boli kandidátske kľúče. | Všetky kandidátske kľúče sú super kľúče. |
výber | Súbor super kľúčov tvorí základ pre výber kandidátskych kľúčov. | Súbor kandidátskych kľúčov tvorí základ pre výber jedného primárneho kľúča. |
počítať | Existuje pomerne viac super kľúčov vo vzťahu. | Vo vzťahu existuje pomerne menej kandidátskych kľúčov. |
Definícia kľúča Super
Super kľúč je základným kľúčom každého vzťahu. Definuje sa ako kľúč, ktorý dokáže identifikovať všetky ostatné atribúty vo vzťahu . Kľúč Super môže byť jediný atribút alebo súbor atribútov. Dve entity nemajú rovnaké hodnoty pre atribúty, ktoré tvoria super kľúč. Existuje aspoň jeden alebo viac, že jeden super kľúč vo vzťahu.
Minimálny super kľúč sa nazýva aj kandidátsky kľúč. Takže môžeme povedať, že niektoré z super kľúčov sa overené za kandidátsky kľúč. Neskôr uvidíme, ako sa skontroluje skrutka, aby sa stal kandidátskym kľúčom.
Vezmeme vzťah R (A, B, C, D, E, F); máme nasledovné závislosti pre vzťah R a každý z nich sme skontrolovali za super kľúč.
Ale pomocou kľúča CB môžeme nájsť hodnoty iba pre atribúty D a F, nemôžeme nájsť hodnotu pre atribúty A a E. Preto CB nie je super kľúč. To isté platí v prípade kľúča D nemôžeme nájsť hodnoty všetkých atribútov v tabuľke pomocou klávesu D. Takže D nie je super kľúč.
Definícia kandidátneho kľúča
Super kľúč, ktorý je správnou podskupinou iného super kľúča toho istého vzťahu, sa nazýva minimálny super kľúč . Minimálny super kľúč sa nazýva Kandidátny kľúč . Podobne ako super kľúč, kandidátsky kľúč tiež jednoznačne identifikuje každú n-tiku v tabuľke. Atribút kandidátskeho kľúča môže prijať hodnotu NULL .
Jeden z kandidátskych kľúčov je vybraný ako primárny kľúč od DBA . Za predpokladu, že hodnoty kľúčových atribútov musia byť jedinečné a neobsahujú NULL. Atribúty kandidátneho kľúča sa nazývajú primárne atribúty .
V hore uvedenom príklade sme našli klávesy Super pre vzťah R. Teraz skontrolujte všetky super kľúče pre kľúč kandidáta.
Super kľúč AB je správna podmnožina super kľúča ABD . Takže ak minimálny super kľúč AB je schopný identifikovať všetky atribúty v tabuľke, potom nepotrebujeme väčší kľúč ABD . Preto je super kľúč AB kandidátsky kľúč, zatiaľ čo ABD bude len super kľúčom.
Podobne je super kľúče DF aj správnou podskupinou super kľúča DEF . Takže keď DF je sám schopný identifikovať všetky atribúty vo vzťahu, prečo potrebujeme DEF . Preto sa super kľúč DF stáva kandidátskym kľúčom, zatiaľ čo DEF je iba super kľúč.
Super CD kľúč nie je správnou podskupinou akéhokoľvek iného super kľúča. Takže môžeme povedať, že CD je minimálny super kľúč, ktorý identifikuje všetky atribúty vo vzťahu. Z tohto dôvodu je CD kandidátsky kľúč.
Zatiaľ čo kľúčové CB a D nie sú super kľúčové, nemôžu byť kandidátsky kľúč dokonca. Pri prehliadaní nad tabuľkou môžete konštatovať, že každý kandidátsky kľúč je super kľúč, ale inverzné nie je pravda.
Kľúčové rozdiely medzi kľúčom Super Key a kandidátskym kľúčom
- Jediný atribút alebo súbor atribútov, ktoré môžu jednoznačne identifikovať všetky atribúty určitého vzťahu, sa nazýva kľúč Super. Na druhej strane super kľúč, ktorý je správnou podskupinou iného super kľúča, sa nazýva kandidátsky kľúč.
- Všetky kandidátske kľúče sú super kľúče, ale inverzné nie je pravda.
- Sada kľúčov super je overená, aby sa našli kandidátske kľúče, zatiaľ čo súbor kandidátskych kľúcov je overený, aby sa vybral jeden primárny kľúč.
- Super kľúče sú v porovnaní s kandidátskymi kľúčiami pomerne viac.
záver:
Super kľúč je základným kľúčom každého vzťahu. Musia sa vykresliť najprv pred rozpoznaním iných kľúčov pre vzťah, pretože tvoria základ pre ostatné kľúče. Kandidátsky kľúč sú dôležité, pretože pomáhajú pri rozpoznávaní najdôležitejšieho kľúča akéhokoľvek vzťahu, ktorý je primárnym kľúčom.