Kaj je integriteta entitete?

Integriteta entitete je eno glavnih pravil učinkovite gradnje baze podatkov. Nanaša se na postopek uveljavljanja primarnega ključa za vsako tabelo v bazi podatkov, kjer mora biti ključ bodisi vrstica bodisi kombinacija vrstic, ki so edinstvene vrednosti, ki niso nič. Z ohranjanjem integritete entitete je vsak zapis v vsaki tabeli baze podatkov mogoče posebej identificirati s pomočjo primarnega ključa. To preprečuje podvajanje zapisov in druge težave, ki bi posredno ogrozile celovitost baze podatkov. V odsotnosti integritete entitete se lahko vnosi v zbirki podatkov po nesreči prekrivajo, saj ne bo mogoče izvleči določenega vnosa iz tabele.

Pri obravnavanju prvega dela celovitosti entitete, “edinstvene” vrednosti, je pomembno razumeti koncept primarnega ključa. Primarni ključ v bazi podatkov je vrednost, ki se uporablja za specifično identifikacijo vsakega posameznega zapisa. Da bi bil učinkovit, mora biti primarni ključ edinstven; z drugimi besedami, izkazati se mora nemogoče pridobiti več zapisov z iskanjem enega samega primarnega ključa. Številka socialnega zavarovanja bi bila dober primarni ključ za bazo podatkov, osredotočeno na posamezne osebne evidence v ZDA, saj dve osebi nikoli nimata iste številke. Vsakdo, ki išče v bazi podatkov določeno številko socialnega zavarovanja, bi po definiciji pridobil le en zapis naenkrat.

Da bi videli težave, ki nastanejo ob odsotnosti celovitosti entitete prek edinstvenih primarnih ključev, bi si lahko predstavljali bazo podatkov, kjer se priimek posameznika uporablja kot primarni ključ. Ker si lahko priimek deli več kot ena oseba, bi z vnosom »Smith« ali »Jones« kot iskalnih kriterijev lahko ustvarili na desetine zapisov. Če se to zgodi, je vprašljiva celovitost baze podatkov, ker končni uporabnik nima več metode za pridobivanje posameznih zapisov.

Drugi del celovitosti entitete navaja, da vrednost, izbrana kot primarni ključ, nikoli ne sme biti nična ali prazna vrednost za noben element v bazi podatkov. Če bi vrednost primarnega ključa ostala nična za enega ali več zapisov v bazi podatkov, bi bilo določenih zapisov nemogoče pridobiti, saj ničelna vrednost ne zadošča za enolično identifikacijo teh zapisov. Z drugimi besedami, če je številka socialnega zavarovanja uporabljena kot primarni ključ in zaposleni ni iz ZDA in ga zato nima, bo evidenco tujega zaposlenega nemogoče identificirati z uporabo primarnega ključa, kar bo razveljavilo celovitost baze podatkov. .