Entitet vs atribut
Entity-relationship modeling (ERM) tehnika se široko koristi za modeliranje baza podataka. Modeliranje odnosa entiteta je proces stvaranja apstraktnog i konceptualnog prikaza podataka. Jedan od glavnih gradivnih blokova ERM-a je entitet. Entitet predstavlja stvarni predmet ili stvar koja može stajati samostalno i može se jedinstveno identificirati. Atributi su svojstva ovih entiteta. ER dijagrami su proizvod modeliranja entitet-odnos. ER dijagrami se crtaju korištenjem entiteta, atributa i drugih simbola (kao što su odnosi).
Šta je entitet?
Entitet predstavlja stvar koja može postojati nezavisno i koja se može jedinstveno identificirati. Preciznije, entitet često predstavlja klasu, grupu ili kategoriju sličnih objekata. Najčešće, entitet predstavlja objekt iz stvarnog svijeta kao što je automobil ili zaposlenik. Entiteti se mogu smatrati imenicama koje se pojavljuju tokom opisa problema koji treba riješiti. Entiteti su predstavljeni kao tabele u relacionim bazama podataka. Općenito, svaki entitet će se mapirati u tačno jednu tabelu u bazi podataka. Pojedinačni redovi u tabelama odgovaraju stvarnim instancama objekta/stvari koju predstavlja entitet. Na primjer, u bazi podataka o zaposlenima, svaki red odgovara evidenciji pojedinačnih zaposlenika kompanije.
Šta je atribut?
U modeliranju entitet-relacija, svojstva entiteta se nazivaju atributi. Drugim riječima, atributi predstavljaju podgrupu informacija objekta kojeg predstavlja entitet. Atributi definiraju pojedinačne instance i pomažu u razlikovanju svake instance opisivanjem njihovih karakteristika. Važno je napomenuti da atributi ne mogu biti postavljeni i da bi trebali biti atomski. U relacionim bazama podataka, gde su entiteti realizovani kao tabele, svaka kolona predstavlja atribute ovih entiteta. Na primjer, u tabeli Zaposleni, kolone kao što su odjel, čin i plata su primjeri atributa zaposlenih. Da bi se napravila razlika između pojedinačnih instanci entiteta, jedno ili više polja atributa s jedinstvenim vrijednostima (za sve instance) može se odabrati kao ključ. Na primjer, atribut broja socijalnog osiguranja (koji je jedinstven za sve zaposlene) se često koristi kao primarni ključ tabele Employee. Ponekad višestruki atributi mogu sastaviti i primarni ključ.
Koja je razlika između entiteta i atributa?
U modeliranju entitet-odnos, entiteti predstavljaju objekte/stvari iz stvarnog svijeta koji se mogu identificirati kao jedinstveni i nezavisni, dok atributi predstavljaju svojstva tih entiteta. U relacionim bazama podataka, entiteti postaju tabele (svaki red predstavlja pojedinačne instance), dok atributi postaju kolone tih odgovarajućih tabela. Prilikom dizajniranja baza podataka, uobičajena je zabuna oko odabira entiteta u odnosu na atribut koji predstavlja određeni stvarni objekt riječi. Na primjer, treba li adresu zaposlenika predstavljati kao atribut ili neki drugi entitet (povezan sa entitetom zaposlenika kroz odnos)? Opšte pravilo je, ako zaposlenik ima više od jedne adrese, onda adresa mora biti entitet (jer atributi nisu postavljeni). Slično, ako je strukturu adrese važno uhvatiti, onda opet adresa treba biti entitet (jer su atributi atomski).