A kandidāta atslēga ir daļa no atslēgas, kas pazīstama kā Super atslēga ( apspriests iepriekšējā sadaļā ), kur superatslēga ir visu to atribūtu superkopa, kas var unikāli identificēt tabulu.
Šeit mēs apspriedīsim kandidāta atslēgu, tās lomu, kā arī tās izmantošanu. Mēs arī apskatīsim dažus piemērus, kas ļaus mums labāk izprast kandidāta atslēgas jēdzienu.
foreach java
Kas ir kandidāta atslēga
Kandidāta atslēga ir superatslēgu kopas apakškopa, kurā atslēga, kas nesatur lieku atribūtu, ir nekas cits kā Kandidāta atslēga . Lai atlasītu kandidātatslēgas no superatslēgu kopas, mums ir jāaplūko superatslēgu kopa.
Kandidāta atslēgas loma
Kandidāta atslēgas uzdevums ir unikāli identificēt tabulas rindu vai kolonnu. Tāpat kandidāta atslēgas vērtība nevar būt Null. Pēc ekspertu domām, kandidāta atslēgas apraksts ir “nav lieku atribūtu”, un tas ir “minimāls korektora attēlojums”.
Kā kandidāta atslēga atšķiras no primārās atslēgas
Lai gan kandidāta un primārās atslēgas mērķis ir vienāds, tas ir, unikāli identificēt korešus, un tad arī tās atšķiras viena no otras. Tas ir tāpēc, ka tabulā mums var būt viena vai vairākas kandidātatslēgas, bet tabulai mēs varam izveidot tikai vienu primāro atslēgu. Tādējādi no iegūto kandidātatslēgu skaita mēs varam identificēt atbilstošo primāro atslēgu. Tomēr, ja tabulā ir tikai viena kandidāta atslēga, to var uzskatīt par abiem galvenajiem ierobežojumiem.
Kandidāta atslēgas piemērs
Apskatīsim to pašu piemēru, kas tika ņemts, apspriežot Super Key, lai izprastu kandidāta atslēgas darbību.
Mums ir EMPLOYEE_DETAIL tabula, kurā mums ir šādi atribūti:
Sara Ali Khan vecums
Emp_SSN: Šajā laukā tiek saglabāts SSN numurs.
Emp_ID: Atribūts, kas saglabā darbinieka identifikācijas numura vērtību.
virkne uz int java
Emp_name: Atribūts, kas saglabā tā darbinieka vārdu, kuram ir norādītais darbinieka ID.
Emp_email: Atribūts, kas saglabā norādīto darbinieku e-pasta ID.
The EMPLOYEE_DETAIL Tālāk ir sniegta tabula, kas palīdzēs jums labāk izprast:
Tātad no iepriekš esošās tabulas mēs ieguvām tālāk norādītos superatslēgas (apskatītas iepriekšējā sadaļā):
Tagad no šiem superatslēgu komplektiem mēs varam secināt kandidātu atslēgas. Lai paņemtu kandidāta atslēgas, vislabākais veids ir analizēt un veidot primārās atslēgas, cik vien iespējams. Tātad, mums ir jāidentificē tās kopas no superatslēgu kopām, kuras atsevišķi var identificēt visu tabulu, vai mēs varam teikt, ka citi tabulas atribūti. Tādējādi rezultāts ir:
Linux arhitektūra
Tātad šie ir trīs iegūtie atribūti, kas var identificēt citus tabulas atribūtus, kas nav primārie. Visas šīs ir kandidātatslēgas, no kurām mēs varam izvēlēties vispiemērotāko atribūtu, kas var viegli identificēt visus tabulas ierakstus, kas tiks aprakstīti kā primārā atslēga.
Atšķirība starp Candidate Key un Super Key
No iepriekš minētajām diskusijām mums var būt šādas atšķirības:
Super atslēga | Kandidāta atslēga |
---|---|
Tā ir visu šādu atribūtu virskopa, kas var unikāli identificēt tabulu. | Tā ir Super atslēgas apakškopa vai daļa. |
Nav obligāti, ka visas superatslēgas ir kandidātatslēgas. | No otras puses, visas kandidātu atslēgas ir superatslēgas. |
Superatslēgas atribūts var būt NULL, kas nozīmē, ka tā vērtības var būt nulles. | Atribūts, kurā ir kandidāta atslēga, nekad nevar būt NULL, kas nozīmē, ka tā vērtības nevar būt nulles. |
Visas superatslēgas tika izveidotas kopā, lai iegūtu kandidātu atslēgas. | Tāpat kandidātu atslēgas tiek saliktas kopā, lai izveidotu primārās atslēgas. |
Izveidoto superatslēgu skaits vienmēr ir redzams vairāk. | Šeit kandidātu atslēgas ir mazākas nekā superatslēgas. |
Tādējādi superatslēga ir superkopa, kandidātatslēga ir apakškopa, un primārā atslēga ir superatslēgas apakškopa.