Documente Academic
Documente Profesional
Documente Cultură
4 MODELUL ENTITATE/RELAIE
Una dintre cele mai cunoscute abordri ale modelrii semantice - cu siguran una
dintre cele mai utilizate - este aa-numita abordare entitate/relaie (E/R), bazat pe
modelul entitate/relaie introdus de ctre Chen n 1976 i rafinat de atunci n diverse
moduri de ctre acesta i de muli ali cercettori. Prin urmare, cea mai mare parte din
acest capitol este destinat unei analize a abordrii E/R.
Totui, trebuie s subliniem c modelul E/R este departe de a fi singurul extins" - au
fost propuse multe altele.
Trebuie s remarcm c Chen a introdus nu numai modelul E/R per se, ci i o
tehnic de realizare a diagramelor corespunztoare (diagramele E/R"). n paragraful
urmtor vom analiza n detaliu diagramele E/R.
Entiti
Entitatea este un obiect (fizic sau abstract) care poate fi identificat ca distinct.
Entitile pot fi a clasificate n entiti obinuite i entiti slabe. Entitatea slab este cea
a crei existen depinde de o alt entitate, n sensul c nu poate exista daca nu exist i
acea entitate. Spre deosebire de aceasta, entitatea obinuit poate exista de sine stttor.
Exemple de entiti: angajaii, departamentele, furnizorii, componentele etc.
Observaie Unii autori utilizeaz termenul de entitate tare n loc de entitate
obinuit.
Atribute
Corelaii
1
Entitile implicate ntr-o anumit corelaie sunt participanii acesteia. Numrul
de participani dintr-o anumit corelaie se numete gradul acesteia.
Fie R un tip de corelaie care presupune ca participant tipurile de entiti E1 i E2.
Dac fiecrei instane a tipului E1 i corespunde cel puin o instan tipului E2, atunci
spunem c participarea entitii E1 n corelaia R este total; n caz contrar, spunem c
este parial.
De exemplu, dac fiecare angajat trebuie s aparin unui departament, atunci
participarea angajailoe n corelaia LUCREAZ este total; dac este posibil ca un
anumit departament s nu aib angajai, atunci participarea departamentelor n corelaia
LUCREAZ este parial.
1. Corelaie de tip unu-la-unu (1:1) Unui element (instan) al unui tip de entitate E1
i corespunde cel mult un element de tipul de entitate E2 i reciproc, unui element de
tipul E2 i corespunde cel mult un element de tipul de entitate E1.
2. Corelaie de tip unu-multi (1:m) - Unui element al unui tip de entitate E1 i sunt
asociate zero, unul sau mai multe elemente de tipul de entitate E2 iar unui element de
tipul de entitate E2 i corespunde cel mult un element de tipul de entitate E1.
3. Corelaie de tip multi- multi (m:m) - Unui element al unui tip de entitate E1 i sunt
asociate zero, unul sau mai multe elemente de tipul de entitate E2 i reciproc, unui
element de tipul E2 i sunt asociate zero, unul sau mai multe elemente de tipul de entitate
E1.
Observaii:
1. Este posibil s ne intereseze o legtur ntre dou tipuri de entiti ntr-un singur sens
sau n dublu sens, n funcie de necesitile de exploatare. Dac legtura este ntr-un
singur sens, precizm acest lucru cu ajutorul sgeilor.
2. Este posibil ca ntre aceleai dou tipuri de entiti s existe mai multe tipuri de
corelaii, cu semnificaii diferite.
3. Este posibil ca i legturile s aib atribute (proprieti).
Diagrame E/R
2
Marginea elipsei este o linie punctat dac atributul respectiv este derivat. Atributele
cheie sunt subliniate. Mulimile de valori corespunztoare atributelor nu se reprezint.
Corelaii
Corelaiile fr atribute se pot reprezenta n dou moduri:
a) Prin intermediul unor linii continue sau ntrerupte, dup cum participarea entitii
respective la corelaie este total sau parial. Numele corelaiei este trecut deasupra sau
lng liniile ce unesc tipurile de entiti.
b) Ca un romb ce conine numele i tipul de corelaie respectiv. Marginea rombului
este o linie punctat dac legtura respectiv este ntre un tip de entitate slab i tipul de
entitate de care depinde existena acesteia. Participanii la corelaie sunt conectai la
corelaia respectiv prin intermediul unor linii continue sau ntrerupte, dup cum
participarea entitii respective la corelaie este total sau parial.
Corelaiile cu atribute se reprezint, obligatoriu, n forma precizat la punctul b).
Tipul legturii (unu-la-unu, unu-multi sau multi-multi) poate fi specificat n
diferite moduri:
a) Fiecare astfel de linie este etichetat cu 1 sau m.
b) Tipul legturii (1:1, 1:m, m:m) este specificat deasupra rombului.
c) Linia corespunztoare prii multi a unei legturi de tipul 1:m sau m:m poate fi
prevzut cu mai multe piciorue:
Exemplu
3
Figura 4.1 Exemplu de diagram E/R
4
Fiecare astfel de corelaie este transformat ntr-o tabel. Astfel:
- Numele tabelei va fi acelai cu al corelaiei respective.
- Cheile primare ale celor dou tipuri de entiti participante la corelaie vor fi
cmpuri ale acestei tabele (chei strine). Cheile strine dintr-o tabel se subliniaz cu
linie ntrerupt.
- Dac legtura are atribute, atunci atributele acesteia se vor regsi ca i cmpuri
ale tabelei respective.
Observaie:
Exist dou posibiliti pentru stabilirea cheii primare a acestei tabele: fie se
alege o cheie compus din toate cmpurile tabelei, fie se introduce un cmp suplimentar,
care s serveasc ca i cheie primar nlocuitoare.
Corespunztor corelaiilor de tip multi-multi prezentate n Figura 4.1, vom avea,
n baza de date, urmtoarele tabele:
5
n final, prezentm structura tabelelor FURNIZOR, COMPONENTA i
PRODUSFINIT, corespunztoare tipurilor de entiti cu acelai nume din Figura 4.1.
FURNIZOR [ Nrf, nume, adresa ]
COMPONENTA [ Nrc, descriere, cantstoc, cantcurscd ]
PRODUSFINIT [ Nrpf, descrpf, cantstocpf, cantcursfabr ]