Atšķirība starp primāro atslēgu un unikālo atslēgu

Gan primārā atslēga, gan unikālā atslēga ir unikālas atslēgas relāciju datu bāzē, kas garantē kolonnas vai kolonnu kopas vērtību unikalitāti. Primārā atslēgas ierobežojumā jau ir iepriekš definēts unikāls atslēgas ierobežojums. Lai arī galveno atslēgu īpaši izmanto, lai identificētu katru tabulas ierakstu, turpretī unikālā atslēga tiek izmantota, lai novērstu dublējošus ierakstus kolonnā, izņemot nulles ierakstu. Tomēr abos taustiņos var būt vairāk nekā tikai viena kolonna no dotās tabulas, un tiem abiem ir izšķiroša loma datu glabāšanā un izguvē. Dati ir tabulu sērija ar kolonnām, un šajās kolonnās glabājas visu veidu informācija, kurai tālāk var piekļūt vai to iegūt, izmantojot instrukcijas. Šajā vietā taustiņi nonāk pie attēla. Primārā atslēga un unikālā atslēga ir divas unikālas atslēgas, kas nosaka, kā dati jāuzglabā sistēmā.

Primārā atslēga

Primārā atslēga (iet arī pēc primārā atslēgvārda) ir unikāla atslēga relāciju datu bāzē, kas identificē katru ierakstu datu bāzes tabulā. Tas ir sava veida unikāls identifikators, piemēram, personas sociālās apdrošināšanas numurs, tālruņa numurs, vadītāja apliecības numurs vai transportlīdzekļa numura zīme. Datu bāzei jābūt tikai vienai primārajai atslēgai.

Tabulā datu bāzē ir kolonna vai kolonnu kopa, kas satur vērtības, kas unikāli identificē katru tabulas rindu. Šo kolonnu vai kolonnu kopu sauc par tabulas galveno atslēgu, kurai jāsatur unikālas vērtības, un tajā nedrīkst būt nulles vērtības. Bez primārās atslēgas relāciju datu bāze nedarbosies.

Primārā atslēga tiek izveidota, definējot PRIMARY KEY ierobežojumu, veidojot vai mainot tabulu. SQL standartā primārā atslēga var saturēt vienu vai vairākas kolonnas, turpretī katra kolonna tiek netieši definēta kā NOT NULL. Ja definējat PRIMARY KEY ierobežojumu vairāk nekā vienā kolonnā, tas var izraisīt vērtību dublēšanos vienā kolonnā, tāpēc katrai vērtību kombinācijai jābūt unikālai visām kolonnām.

Primārajai atslēgai ir šādas funkcijas:

  • Katrā tabulā jābūt vienai un tikai vienai primārajai atslēgai, ne vairāk kā vienai.
  • Primārā atslēga nedrīkst saturēt NULL vērtības.
  • Tas var sastāvēt no vienas vai vairākām kolonnām.
  • Visas kolonnas jādefinē kā NULLES.
  • Primārā atslēga pēc noklusējuma ir grupēts unikāls indekss.

Unikālā atslēga

Unikālā atslēga ir vienas vai vairāku tabulas kolonnu / lauku kopums, kas unikāli identificē ierakstu datu bāzes tabulā. UNIQUE KEY ierobežojums nodrošina, lai visas kolonnas vērtības būtu unikālas datu bāzē. Tāpat kā primārā atslēga, arī unikālā atslēga var sastāvēt no vairāk nekā vienas kolonnas. Tomēr unikālā atslēga var pieņemt tikai vienu nulles vērtību. Nevienām divām rindām nav vienādas vērtības datu bāzes tabulā.

Unikālā atslēga ir diezgan līdzīga primārajai atslēgai, un to var definēt tabulas izveidošanas laikā. Ja kolonna vai kolonnu kopa relāciju datu bāzes sistēmā tiek atzīmēta kā unikāla, tā pirms ierobežojuma piešķiršanas pārbauda vērtību integritāti, lai diviem ierakstiem noteiktā kolonnā nebūtu identiskas vērtības.

UNIKĀLS ir ierobežojums kolonnā, kas nav PRIMĀRĀ KEY, kas raksturo:

  • UNIKĀLĀS ATSLĒGAS ierobežojums garantē vērtību unikalitāti.
  • Uz galda var definēt vairākas unikālas atslēgas.
  • Kolonnā var būt NULL vērtība, bet vienā kolonnā ir atļauta tikai viena NULL vērtība.
  • Ar unikālu atslēgu pēc noklusējuma var izveidot neklasificētu indeksu.

Atšķirība starp primāro atslēgu un unikālo atslēgu

1. Funkcija

Primārā atslēga ir sava veida unikāls atslēgas identifikators, kas unikāli identificē rindu datu bāzes tabulā, savukārt unikālā atslēga identificē visas iespējamās tabulā esošās rindas, nevis tikai pašreizējās rindas..

2. Uzvedība

Primāro atslēgu izmanto, lai identificētu ierakstu datu bāzes tabulā, turpretī unikālo atslēgu izmanto, lai novērstu dublējošas vērtības kolonnā, izņemot nulles ierakstu.

3. Indeksēšana

Primārā atslēga pēc noklusējuma izveido kopētu unikālo indeksu, savukārt unikālā atslēga ir unikāls neklasificēts indekss datu bāzes tabulā pēc noklusējuma.

4. Nulles vērtības

Primārā atslēga nevar pieņemt NULL vērtības datu bāzes tabulā, savukārt unikālā atslēga tabulā var pieņemt tikai vienu NULL vērtību.

5. Ierobežot

Uz tabulas var būt tikai viens un tikai viens primārais taustiņš, tomēr datu bāzes sistēmā tabulā var būt arī vairākas unikālas atslēgas..

Primārā atslēga pret unikālo atslēgu

Primārā atslēga

Unikālā atslēga

Primāro atslēgu izmanto, lai unikāli identificētu ierakstu / rindu datu bāzes tabulā. Unikālā atslēga tiek izmantota, lai unikāli identificētu visas iespējamās tabulas rindas, nevis tikai pašreizējās rindas.
Tas nepieņem NULL vērtības. Tabulā var pieņemt tikai vienu NULL vērtību.
Pēc noklusējuma tas ir grupēts indekss, kas nozīmē, ka dati tiek sakārtoti klasterizētā indeksa secībā. Pēc noklusējuma tas ir unikāls neklasificēts indekss.
Tabulā var būt tikai viena galvenā atslēga. Tabulā var būt vairākas unikālas atslēgas.
Primārā atslēga tiek definēta, izmantojot PRIMARY KEY ierobežojumu. Unikālā atslēga tiek attēlota, izmantojot UNIQUE ierobežojumu.
Izmanto, lai identificētu rindu tabulā. Izmanto, lai novērstu dublējošas vērtības kolonnā.
Primāro atslēgu vērtības nevar mainīt vai izdzēst. Unikālās atslēgu vērtības var mainīt.

Kopsavilkums

  • Gan galvenā atslēga, gan unikālā atslēga ir entītijas integritātes ierobežojumi, kas daudzos aspektos ir līdzīgi. Tomēr programmēšanā viņiem ir diezgan liela atšķirība. Abas ir būtiskas koncepcijas, kuras galvenokārt izmanto datu bāzu pārvaldības sistēmās.
  • Primārā atslēga ir datu bāzes tabulas vienas vai vairāku kolonnu / lauku kopums, kas unikāli identificē ierakstu tabulā. Unikālā atslēga, no otras puses, novērš divu ierakstu identiskas vērtības kolonnā.
  • Konceptuāli dotajai tabulai var būt tikai viens PRIMĀRĀS ATSLĒGVĀRDS, savukārt galdam var būt vairāk nekā viens UNIKĀLS ATSLĒGVĀRDS..
  • Primārajai atslēgai jābūt unikālai, bet unikālajai atslēgai nav obligāti jābūt galvenajai.
  • Primārā atslēga nevar pieņemt NULL vērtības tabulā, savukārt unikālā atslēga var atļaut NULL vērtības, izņemot tikai vienu NULL tabulā.