Ieteicams, 2020

Redaktora Izvēle

Atšķirība starp primāro un kandidāta atslēgu

Taustiņi ir atribūts vai atribūtu kopums, ko izmanto, lai piekļūtu tabulām, vai arī tās izmanto, lai izveidotu attiecības starp divām tabulām. Šajā rakstā mēs apspriedīsim primāro un kandidātu atslēgu un atšķirības starp tām. Gan Primārā, gan Kandidāta atslēga unikāli identificē attiecību attiecībās vai tabulās. Bet vissvarīgākais punkts, kas tos atšķir, ir tas, ka attiecībās var būt tikai viena primārā atslēga . Tomēr attiecībās var būt vairāk nekā viena kandidāta atslēga .

Pastāv dažas atšķirības starp primāro un kandidātu atslēgu, kuru es apspriedīšu, izmantojot zemāk redzamo salīdzināšanas diagrammu.

Salīdzinājuma diagramma

Salīdzinājuma pamatsPrimārā atslēgaKandidāta atslēga
PamataJebkurā sakarībā var būt tikai viena primārā atslēga.Saistībā var būt vairāk par vienu kandidāta atslēgu.
NULLNeviens primārās atslēgas atribūts nevar saturēt NULL vērtību.Kandidāta atslēgas atribūtam var būt NULL vērtība.
NorādietNav obligāti norādīt primāro atslēgu jebkurai attiecībai.Nevar būt sakarība bez norādītā atslēgas vārda.
FunkcijaPrimārā atslēga apraksta svarīgāko attiecības atribūtu.Kandidātu atslēgas piedāvā kandidātus, kas var pretendēt uz primāro atslēgu.
PretējiPrimārā atslēga ir kandidāta atslēga.Bet tas nav obligāti, ka katrs kandidāta atslēga var būt primārā atslēga.

Primārās atslēgas definīcija

Primārā atslēga ir atribūts vai atribūtu kopums, kas unikāli identificēs katru kopu attiecībā. Katrai attiecībai var būt tikai viena primārā atslēga. Jāpievērš uzmanība tam, ka primārajai atslēgai nekad nevajadzētu būt NULL vērtībai, un tai ir jābūt unikālai vērtībai katrai attiecībai. Primārās atslēgas atribūtu / s vērtībām ir jābūt statiskām, ti, atribūta vērtība nekad nedrīkst mainīties.

Viens no kandidātu atslēgām kļūst kvalificēts, lai kļūtu par primāro atslēgu. Noteikumi, kas pretendenta atslēgai ir jāsaņem, lai kļūtu par primāriem, ir tas, ka galvenajai vērtībai nekad nevajadzētu būt NULL, un tai jābūt unikālai visām vienībām.

Ja attiecībās ir atribūts, kas ir kādas citas attiecības primārā atslēga, tad šo atribūtu sauc par ārējo atslēgu .

Ieteicams noskaidrot attiecību primāro atslēgu, pirms tiek ieviesti citi attiecības atribūti, jo primārā atslēga identificē katru vienību unikāli. Labāk ir izvēlēties vienu atribūtu vai nelielu atribūtu skaitu kā primāro atslēgu, kas atvieglo attiecību apstrādi.

Tagad aplūkosim primārās atslēgas piemēru.

 Students {ID, pirmais vārds, pēdējais vārds, vecums, adrese} 

Šeit mēs vispirms izdomāsim kandidātu atslēgas. Esmu izdomājis divus kandidātu atslēgas {ID} un {First_name, Last_name}, jo tie unikāli identificēs katru studentu studenta attiecībās. Tagad es izvēlos ID kā galveno atslēgu, jo dažreiz var gadīties, ka diviem skolēniem var būt tādi paši vārdi un uzvārdi, tāpēc būs viegli izsekot studentu ar savu ID .

Kandidāta atslēgas definīcija

Kandidāta atslēga ir atribūts vai atribūtu kopums, kas unikāli definē attiecību attiecībā. Saistībā ir vairāk nekā viens kandidāts. Šīs kandidātu atslēgas ir kandidāti, kas var kļūt par primāro atslēgu.

Lai gan katra kandidāta atslēga atbilst galvenajai atslēgai, tikai vienu var izvēlēties par primāro atslēgu. Noteikumi, kas nepieciešami, lai kļūtu par primāro atslēgu, ir atslēgas atribūtu vērtība, kas nekad nevar būt NULL jebkurā atslēgas domēnā, tai jābūt unikālai un statiskai .

Ja visi kandidātu atslēgas atbilst primārajai atslēgai, tad pieredzējušam DBA ir jāpieņem lēmums, lai noskaidrotu primāro atslēgu. Nekad nevar būt attiecības bez kandidāta atslēgas.

Sapratīsim kandidāta atslēgu ar piemēru. Ja pievienosim vēl dažas atribūtus studentu attiecībām, es apspriēju iepriekš.

 Studentu {ID, pirmā vārda, pēdējās personas vārds, vecums, adrese, DOB, departamenta nosaukums} 

Šeit es varu noskaidrot divas kandidāta atslēgas, kas ir {ID}, {First_name, Last_name, DOB} . Tātad jūs varat saprast, ka kandidātu atslēgas ir tādas, kas unikāli identificē attiecību attiecībā.

Galvenās atšķirības starp primāro un kandidāta atslēgu

  1. Pamata punkts, kas atšķir primāro atslēgu no kandidāta atslēgas, ir tas, ka shēmā var būt tikai viens primārs. Tomēr vienai sakarībai var būt vairākas kandidātu atslēgas.
  2. Atribūts primārajā atslēgā nekad nevar saturēt NULL vērtību, jo primārās atslēgas galvenā funkcija ir unikāla identifikācija saistībā ar. Pat primāro atslēgu var izmantot kā svešu atslēgu citās attiecībās, un tāpēc tā nedrīkst būt NULL, lai atsauces saistība varētu atrast tupes atsauces attiecībās. Kandidāta atslēga var būt NULL, ja vien atribūta ierobežojums nav norādīts null.
  3. Primārā atslēga ir obligāti jānorāda, bet nevar būt saistība bez kandidāta atslēgām.
  4. Primārā atslēga apraksta unikālo un vissvarīgāko attiecības atribūtu, savukārt kandidātu atslēgas nodrošina kandidātus, no kuriem vienu var izvēlēties par primāro atslēgu.
  5. Katra primārā atslēga ir kandidāta atslēga, bet otrādi, tā nav taisnība.

Secinājums:

Saistībā ar primārās atslēgas norādīšanu tas nav obligāts. No otras puses, ja jūs paziņojat par attiecībām, kandidāta atslēgām ir jābūt klāt šajā attiecībā, lai izveidotu labu attiecību.

Top