Diferența dintre cheia super cheie și cea cheie candidată

Autor: Laura McKinney
Data Creației: 1 Aprilie 2021
Data Actualizării: 10 Mai 2024
Anonim
TIPURI DE OAMENI LA SALĂ ( PARTEA II ) #3Chestii
Video: TIPURI DE OAMENI LA SALĂ ( PARTEA II ) #3Chestii

Conţinut


Cheile sunt elementele esențiale ale oricărei baze de date relaționale. Identifică fiecare tuple într-o relație unică. Tastele sunt de asemenea utilizate pentru a stabili relația dintre tabelele dintr-o schemă. În acest articol, vom discuta despre două chei de bază ale oricărei baze de date super cheie și cheie candidată. Fiecare cheie de candidat este o cheie super, dar, fiecare super-cheie poate fi sau nu o cheie de candidat. Există mulți alți factori de distincție între cheia super-cheie și cea de candidat, despre care am discutat pe scurt în graficul de comparație de mai jos.

  1. Diagramă de comparație
  2. Definiție
  3. Diferențele cheie
  4. Concluzie

Diagramă de comparație

Baza pentru comparațieSuper cheieCheia candidatului
De bazăUn atribut unic sau un set de atribute care identifică în mod unic toate atributele dintr-o relație este super-cheie.Un subset al unei chei super, care este de asemenea o super-cheie este o cheie candidată.
Una în altaNu este obligatoriu ca toate tastele super să fie chei de candidat.Toate tastele candidatului sunt super chei.
SelecţieSetul de chei super formează baza pentru selectarea tastelor candidate.Setul de chei de candidat constituie baza pentru selectarea unei singure chei primare.
NumaraExistă relativ mai multe super-chei într-o relație.Există relativ puține chei de candidat într-o relație.


Definiția Super key

A super cheie este un de bază cheia oricărei relații. Este definit ca a cheie care pot identifica toate celelalte atribute dintr-o relație. Super-cheie poate fi un singur atribut sau un set de atribute. Două entități nu au aceleași valori pentru atributele care compun o super-cheie. Există cel puțin una sau mai multe dintre acele super chei într-o relație.

O super-cheie minimă este, de asemenea, numită cheie de candidat. Deci, putem spune că unele dintre super tastele sunt verificate pentru a fi o cheie candidată. Vom vedea mai târziu cum se verifică o superkey pentru a deveni cheie de candidat.

Să luăm o relație R (A, B, C, D, E, F); avem următoarele dependențe pentru o relație R și le-am verificat ca fiecare să fie super-cheie.

Folosind cheia, AB putem identifica restul atributelor tabelului i.e. CDEF. În mod similar, folosind tastele CD, ABD, DF, și DEF putem identifica atributele rămase ale tabelului R. Deci toate acestea sunt super chei.


Dar folosind o cheie CB putem găsi valori doar pentru atribut D și F, nu putem găsi valoarea pentru atribute A și E. Prin urmare, CB nu este o cheie super. La fel se întâmplă și cu cheia D nu putem găsi valorile tuturor atributelor dintr-un tabel folosind tasta D. Deci, D nu este o super-cheie.

Definiția Candidate Key

A super cheie adică un subset corespunzător al unei alte super-cheie a aceleiași relații se numește a super-cheie minimă.  Super cheia minimă se numește Cheia candidatului. Ca și tasta super, o cheie candidată identifică și fiecare tuple dintr-un tabel în mod unic. Atributul unei chei de candidat poate fi acceptat NUL valoare.

Una dintre cheile candidatului este aleasă ca cheie primară de DBA. Cu condiția ca valorile atributului cheie să fie unice și să nu conțină NULL. Atributele cheii Candidate se numesc atribute principale.

În exemplul de mai sus, am găsit tastele Super pentru relația R. Acum, să verificăm toate tastele super pentru a fi cheia Candidat.

Super cheie AB este un subset corespunzător de super-cheie ABD. Deci, când o super-cheie minimă AB singur, este capabil să identifice toate atributele dintr-un tabel, atunci nu avem nevoie de cheie mai mare ABD. De aici, super cheie AB este o cheie candidată în timp ce ABD va fi doar cheia super.
În mod similar, o super cheie DF este de asemenea un subset corespunzător de super-cheie DEF. Deci când DF este singur capabil să identifice toate atributele într-o relație de ce avem nevoie DEF. De aici, super cheie DF devine o cheie de candidat în timp ce DEF este doar o cheie super.

Super cheia CD nu este un subset corespunzător al niciunei alte super-chei. Deci, putem spune CD este o super-cheie minimă care identifică toate atributele dintr-o relație. Prin urmare, CD este cheia candidatului.

Întrucât cheia CB și D nu sunt super cheie deci nu pot fi chiar cheia candidatului. Vizualizând tabelul de mai sus, puteți concluziona că fiecare cheie de candidat este o super-cheie, dar inversul nu este adevărat.

  1. Un singur atribut sau un set de atribute care pot identifica în mod unic toate atributele unei anumite relații se numește Super cheie. Pe de altă parte, o super-cheie care este un subset corespunzător al altei chei super se numește cheie candidată.
  2. Toate tastele candidatului sunt chei super, dar inversul nu este adevărat.
  3. Setul de chei super este verificat pentru a găsi chei de candidat, în timp ce setul de chei candidate este verificat pentru a selecta o singură cheie primară.
  4. Tastele Super sunt mai mult ca număr decât tastele candidate.

Concluzie:

Super cheia este o cheie de bază a oricărei relații. Trebuie să fie reprezentate mai întâi înainte de a recunoaște alte chei pentru relație, deoarece formează baza altor chei. Cheia candidatului este importantă, deoarece ajută la recunoașterea celei mai importante chei a oricărei relații care este o cheie primară.