Разлика између примарног и иностраног кључа у ДБМС-у

Аутор: Laura McKinney
Датум Стварања: 1 Април 2021
Ажурирати Датум: 12 Може 2024
Anonim
Разлика између примарног и иностраног кључа у ДБМС-у - Технологија
Разлика између примарног и иностраног кључа у ДБМС-у - Технологија

Садржај


Кључеви су круцијални дио ДБМС-а који се користе за препознавање и успостављање односа између табела у шеми. Данас ћемо разговарати о два врло важна кључа ДБМС, тј. Примарном и страном кључу, а такође ћемо разговарати о разлици између примарног и страног кључа. На путу ћу вам рећи да је основна разлика између примарног и страног кључа који је примарни кључ један од одабраних кандидатских кључева пројектанта базе података, док је страни кључ кључ који се односи на примарни кључ другог односа.

Постоје многе друге разлике између ове две, идентификујмо те разлике помоћу табеле упоређивања, приказане доле.

  1. Упоредни графикон
  2. Дефиниција
  3. Кључне разлике
  4. Закључак

Упоредни графикон

Основе за упоређивањеПримарни кључСтрани кључ
ОсновниПримарни кључ је изабрани кључ кандидата који јединствено дефинише тапис у односу.Страни кључ у табели односи се на примарни кључ друге табеле.
НУЛАВредност примарног кључа никада не може бити НУЛЛ.Страни кључ прихвата НУЛЛ вредност.
ДупликатНиједна два тапис у односу не садрже дупликате за атрибут примарног кључа.Туполови могу да носе дупликатну вредност за атрибут страног кључа.
ДометПостоји само један примарни кључ односа.У вези може бити више страних кључева.
Привремена табелаПримарно ограничење кључа може се дефинисати на привремене табеле.Ограничење страног кључа не може се дефинисати на привременим таблицама.
Индекс кластераПримарни кључ је кластерно индексиран.Страни кључ се не кластерира индексирано аутоматски; то се мора урадити ручно.
ИнсертионВриједност атрибута примарног кључа можемо уметнути, чак и ако референтни страни кључ нема ту вриједност у свом ступцу.Не можемо убацити вредност у страни кључ, ако та вредност није присутна у ступцу референтног примарног кључа.
БрисањеПре него што избришете вредност примарног кључа, уверите се да вредност још увек није присутна у ступцу референтне таблице са страним кључем.Можете да избришете вредност из ступца страног кључа без да се трудите, да ли је та вредност присутна у ступцу референтног примарног кључа у односу на однос.


Дефиниција примарног кључа

Примарни кључ јединствено дефинише тапове у односу. То може бити појединачни атрибут у односу или може бити скуп атрибута у односу. Вриједност атрибута примарног кључа би требала никада или ретко промењена. Будући да је то главно, значи идентификовати било који запис у бази података. Промена било које вредности атрибута примарног кључа створила би збрку.

Дизајнер базе података изабрао је један од кандидат кључеви као примарни кључ узимајући у обзир неке тачке. Прво разматрање је вредност атрибута примарног кључа која никада не може да садржи НУЛА вредност. Јер, ако вриједност атрибута примарног кључа садржи НУЛЛ, то значи да не можемо препознати тај запис у табели. Такође крши ограничење интегритета ентитета. Друго разматрање је, нема два тупола у табели може да садржи исти вредност за атрибут примарног кључа, јер би нарушио јединственост међу таповима.


Може бити само један примарни кључ за сваки однос. Примарни кључ је подразумевано индекс кластера, што значи да се сви таписи у табели сортирају на основу вредности атрибута примарних кључева. Ограничење примарног кључа може се дефинисати на а привремени сто. Табеле посредника креиране током извршења упита називамо привременим табелама.

Док брисање Тупле од релације, треба водити рачуна да вредност примарног кључа избрисаног копча још увек није присутна у колони страних кључева релацијског односа. Док уметање нема ограничења за примарни кључ.

Примарни кључ табеле када се користи у некој другој табели, тада постаје страни кључ за ту табелу. Ограничења страних кључева разматрана су у даљем тексту.

Дефиниција страног кључа

Када је однос Р1, међу његовим атрибутима, има и Примарни кључ друге везе Р2, онда се тај атрибут зове Страни кључ за однос Р1. Однос Р1 зове се инострани кључ референтни однос јер се односи на примарни кључ односа Р2 и релацију Р2 се зове референтни однос.
За разлику од примарног кључа, страни кључ може прихватити НУЛА вриједности јер, он нема задатак да запис идентификује у односу, као што имамо примарни кључ за то. На исти начин прихвата и страни кључ дупликате вриједности.

Веза може имати вишеструко страни кључеви, јер може имати различите атрибуте који су примарни кључеви у различитим односима. Ограничење страних кључева може не бити дефинисан на привремене таблице, нити страни кључ је индекс кластера атрибут.

Док убацивање вриједност у ступцу страног кључа референцираног односа, осигурајте да вриједност уметања мора бити присутна у ступцу примарног кључа референтног односа. Док нема ограничења за то време брисање вредност из ступца страног кључа.

  1. Примарна је скуп атрибута / кандидатски кључ који јасно идентификује запис у односу. Међутим, страни кључ у табели односи се на примарни кључ друге табеле.
  2. Ниједан атрибут примарног кључа не може садржавати НУЛЛ вриједности, док атрибут страног кључа може прихватити НУЛЛ вриједност.
  3. Примарни кључ треба да има јединствене вредности атрибута, док страни кључ може имати дуплиране вредности атрибута.
  4. У вези може бити више страних кључева, али однос има само један примарни кључ.
  5. Ограничење примарног кључа може се применити на привремене таблице. Међутим, ограничење страног кључа не може се применити на привремене таблице.
  6. Примарни кључ је подразумевано кластерски индексиран, док се страни кључ не индексира аутоматски, већ се може извршити ручно.
  7. Док уметате вредност у ступац страног кључа, провјерите је ли вриједност атрибута уметања присутна у референцираном ступцу примарног кључа. Међутим, нема ограничења за уметање у колону примарног кључа.
  8. Док бришете вриједност из ступца примарног кључа, провјерите да вриједност избрисаног атрибута није присутна у референтном ступцу страног кључа. Међутим, нема ограничења за брисање вредности из ступца страног кључа.

Закључак:

И основни и страни кључ су важни за шему. Примарни кључ дефинише сваки сноп у односу јединствено, док се страни кључ користи за стварање везе између два односа.