Rozdiel medzi primárnym a kandidátnym kľúčom

Autor: Laura McKinney
Dátum Stvorenia: 1 Apríl 2021
Dátum Aktualizácie: 3 V Júli 2024
Anonim
Rozdiel medzi primárnym a kandidátnym kľúčom - Technológie
Rozdiel medzi primárnym a kandidátnym kľúčom - Technológie

Obsah


Klávesy sú atribúty alebo skupina atribútov, ktoré sa používajú na prístup k n-ticiam z tabuľky alebo sa používajú aj na vytvorenie vzťahu medzi dvoma tabuľkami. V tomto článku sa budeme venovať primárnemu a kandidátnemu kľúču a rozdielom medzi nimi. Primárny aj kandidátsky kľúč jednoznačne identifikuje n-ticu vo vzťahu alebo tabuľke. Najdôležitejším bodom, ktorý ich odlišuje, je, že môže existovať iba jeden primárny kľúč vo vzťahu. Môže však existovať viac ako jeden kľúč kandidáta vo vzťahu.

Existuje niekoľko ďalších rozdielov medzi primárnym a kandidátskym kľúčom, o ktorých budem diskutovať pomocou porovnávacej tabuľky uvedenej nižšie.

  1. Porovnávacia tabuľka
  2. definícia
  3. Kľúčové rozdiely
  4. záver

Porovnávacia tabuľka

Základ pre porovnaniePrimárny kľúčKandidátsky kľúč
základnéV ľubovoľnom vzťahu môže byť iba jeden primárny kľúč.Vo vzťahu môže byť viac ako jeden kandidátsky kľúč.
NULOVÝŽiadny atribút primárneho kľúča nemôže obsahovať hodnotu NULL.Atribút kľúča kandidáta môže mať NULL hodnotu.
špecifikovaťJe nepovinné špecifikovať primárny kľúč pre akýkoľvek vzťah.Bez zadaného kľúča kandidáta nemôže existovať vzťah.
vlastnosťPrimárny kľúč popisuje najdôležitejší atribút pre vzťah.Klíče kandidátov predstavujú kandidátov, ktorí sa môžu kvalifikovať na primárny kľúč.
NaopakPrimárny kľúč je kandidátsky kľúč.Nie je však povinné, aby každý kandidátsky kľúč mohol byť primárnym kľúčom.


Definícia primárneho kľúča

Primárny kľúč je atribút alebo skupina atribútov, ktoré jednoznačne identifikujú každú n-ticu vo vzťahu. Môže existovať iba jeden primárny kľúč pre každý vzťah. Musí sa zabezpečiť, aby primárny kľúč mal nikdy obsahovať a NULOVÝ hodnotu a musí mať jedinečný hodnota pre každú n-ticu vo vzťahu. Hodnoty atribútov primárneho kľúča musia byť statický, t. j. hodnota atribútu by sa nemala nikdy alebo zriedka meniť.

Jeden z Kandidátske kľúče získa kvalifikáciu na to, aby sa stal primárnym kľúčom. pravidlá že kandidátsky kľúč musí byť kvalifikovaný, aby sa stal primárnym, že kľúčová hodnota by nikdy nemala byť NULOVÝ a musí to tak byť jedinečný pre všetky n-tice.


Ak vzťah obsahuje atribút, ktorý je primárnym kľúčom nejakého iného vzťahu, potom sa tento atribút nazýva cudzí kľúč.

Odporúča sa zistiť primárny kľúč vzťahu pred zavedením ďalších atribútov vzťahu, pretože primárny kľúč jedinečne identifikuje každú n-ticu. Je lepšie zvoliť jeden atribút alebo malý počet atribútov ako primárny kľúč, ktorý uľahčuje manipuláciu so vzťahmi.

Teraz si ukážme príklad primárneho kľúča.

Študent {ID, meno, priezvisko, vek, adresa}

Tu najskôr zistíme, ktoré kandidátske kľúče sú. Prišiel som na to dva kľúče kandidáta {ID} a {Meno Priezvisko} pretože jedinečne identifikujú každého študenta vo vzťahu študent. Teraz si vyberiem ID ako môj primárny kľúč, pretože niekedy sa môže stať, že dvaja študenti môžu mať rovnaké meno a priezvisko, takže bude ľahké vystopovať študenta pomocou jeho ID.

Definícia kľúča kandidáta

kľúč kandidáta je atribút alebo skupina atribútov, ktoré jednoznačne definujú n-ticu vo vzťahu. Tam byť viac než jeden kľúč kandidáta vo vzťahu. Tieto kľúče kandidátov sú kandidátmi, ktorí sa môžu kvalifikovať ako primárny kľúč.

Aj keď sa každý kandidátsky kľúč kvalifikuje ako primárny kľúč, ako primárny kľúč sa dá zvoliť iba jeden. Pravidlami, ktoré kandidátsky kľúč potrebuje, aby sa stal primárnym kľúčom, sú hodnoty atribútov kľúča, ktoré nikdy nemôžu byť NULOVÝ v akejkoľvek doméne kľúča musí byť jedinečný a statický.

Ak sú všetky kandidátske kľúče kvalifikované pre primárny kľúč, potom skúsený DBA musí rozhodnúť o určení primárneho kľúča. Bez kľúča kandidáta nikdy nemôže existovať vzťah.

Pochopme príklad kandidáta na kľúč. Ak pridáme nejaké ďalšie atribúty do vzťahu študentov, diskutoval som vyššie.

Študent {ID, meno, priezvisko, vek, adresa, DOB, meno oddelenia}

Tu môžem prísť na to dva kandidátske kľúče, ktoré sú {ID}, {Meno, Priezvisko, DOB}, Aby ste pochopili, kandidátske kľúče sú tie, ktoré jednoznačne identifikujú n-ticu vo vzťahu.

  1. Základným bodom, ktorý odlišuje primárny kľúč od kandidáta, je to, že v schéme môže existovať iba jeden primárny kľúč. Môže však existovať viac kandidátskych kľúčov pre jeden vzťah.
  2. Atribút pod primárnym kľúčom nemôže nikdy obsahovať hodnotu NULL, pretože hlavnou funkciou primárneho kľúča je jedinečná identifikácia záznamu vo vzťahu. Dokonca aj primárny kľúč sa môže použiť ako cudzí kľúč v inom vzťahu, a preto nesmie byť NULL, aby referenčný vzťah mohol nájsť n-tice v referenčnom vzťahu. Kandidátsky kľúč môže byť NULL, pokiaľ nie je špecifikované obmedzenie atribútu null.
  3. Je nepovinné špecifikovať primárny kľúč, ale bez kandidátnych kľúčov nemôže existovať vzťah.
  4. Primárny kľúč opisuje jedinečný a najdôležitejší atribút vzťahu, zatiaľ čo kandidátske kľúče poskytujú kandidátov, z ktorých jeden môže byť vybraný ako primárny kľúč.
  5. Každý primárny kľúč je kandidátnym kľúčom, ale naopak to nie je pravda.

záver:

Pre vzťah je voliteľné určiť primárny kľúč. Na druhej strane, ak deklarujete vzťah, v tomto vzťahu musia byť prítomné kľúče kandidáta, aby sa vytvoril dobrý vzťah.