Documente Academic
Documente Profesional
Documente Cultură
Generalitati
O baza de date poate fi definita ca o multime de date ce modeleaza un univers. Acest univers este format din
obiecte legate intre ele. Obiectele de acelasi tip constituie o entitate, iar legatura intre doua entitati defineste
o relatie (asociere). Entitatile si relatiile au anumite caracteristici (atribute).
Procesul de descriere a entitatilor si a asocierilor este numit modelare si este realizat cu ajutorul unui model
de date. Modelarea unei baze de date permite trecerea de la perceptia unor fapte din lumea reala la
reprezentarea lor prin date.
Diagrama entitate-relatie (E-R) reprezinta un model neformalizat pentru reprezentarea unor fenomene din
lumea reala. Diagrama este deseori utilizata pentru reprezentarea grafica a modelului relational. Practic, se
construieste diagrama E-R careia i se asociaza modelul relational si acestuia i se adreseaza cererile. În felul
acesta se imbina simplitatea descriptiva a diagramei E-R cu puterea limbajului de manipulare a datelor al
modelului relational.
Vom analiza notiunile de entitate, relatie, atribut, introduse de Peter Chen in 1976 si vom arata cum se poate
construi o diagrama entitate-relatie.
Entitate
Prin entitate se intelege un obiect concret sau abstract reprezentat prin proprietatile sale. De exemplu,
consideram o institutie formata din mai multe departamente, in care lucreaza salariati. Salariati sunt asociati
la anumite proiecte, executnâd in cadrul acestor proiecte diferite sarcini. Elementele semnificative ale
modelului analizat si legaturile dintre acestea, sunt reprezentate in urmatoarea figura.
Entitatile sunt substantive, dar nu orice substantiv este o entitate. Trebuie ignorate substantivele
nerelevante, ca de exemplu, numar de ore lucrate, salarii etc.
Pentru fiecare entitate este obligatoriu sa se dea o descriere detaliata. De exemplu, un SALARIAT
este orice angajat permanent, functionar care lucreaza jumatate de timp sau pensionar, dar persoanele
care au fost angajate numai pentru un anumit contract nu apartin acestei entitati.
Nu pot exista doua entitati cu acelasi nume, sau o entitate cu doua nume diferite.
Cheia primara identifica unic o entitate si face distinctie intre valori diferite ale entitati. De exemplu,
codul salariatului este o cheie primara pentru entitatea SALARIAT, dar numele salariatului nu este o
cheie primara deoarece pot exista doi salariati cu acelasi nume.
Cheia primara trebuie sa fie unica si cunoscuta la orice moment. Cheia primara trebuie sa satisfaca
urmatoarele conditii:
Sa fie familiara utilizatorului astfel incat acesta sa o poata folosi cu usurinta in filtrarile sale.
Relatie (asociere)
Relatia (asociere) reprezinta o legatura intre doua sau mai multe entitati. De exemplu,
'atasat_la', reprezinta o relatie care leaga entitatile SALARIAT si PROIECT. O valoare a
unei relatii este o comunicare intre valorile entitatilor care le leaga. Existenta unei asocieri
este subordonata existentei entitatilor care le leaga.
Pot exista relatii diferite cu acelasi nume. În acest caz le diferentiaza entitatile care sunt
asociate prin relatia respectiva.
Cardinalitatea relatiei, adica numarul de tupluri apartinand unei relatii, este raspunsul la
intrebari de tipul:
Atribut
Atributul reprezinta o proprietate a unei entitati sau a unei relatii. Trebuie facuta distinctie
intre tipul atributului care devine coloana in modelele relationale si valoarea acestuia, care
devine valoare in coloane. Fiecarui atribut trebuie sa i se de-a o descriere completa
(caracteristici), respectiv pentru fiecare atribut trebuie specificat numele, tipul atributului
(integer, float, char, etc), valorile posibile, valorile implicite, regulile de validare.
Diagrama entitate-relatie
Vom descrie cateva cazuri speciale de entitati, relatii, atribute si modul lor de reprezentare in
cadrul diagramei entitate-relatie.
Exista totdeauna o relatie intre o subentitate si o superentitate numita ISA, care are
cardinalitatea maxima 1:1 si minima 1:0.
Exista atribute optionale, a caror valoare este uneori necunoscuta, uneori neaplicabila.
Aceste atribute trebuie introduse la subentitati. De exemplu, comisionul pentru deplasare si
zona de lucru sunt atribute specifice unui agent teritorial si trebuie introduse la subentitatea
AGEN_TERITORIAL.
Relatiile reflecta legaturi naturale care exista intre componentele sistemului. Aceeasi
realitate poate fi insa perceputa diferit, de diferiti analisti, pentru un acelasi sistem putand fi
obtinute modele structurale distincte.