Documente Academic
Documente Profesional
Documente Cultură
1(25)/2003
It is necessary that data design be achieved properly so that a system offering correct info r-
mation could be designed, which determines the success and efficiency of the decisional pro c-
ess.
The work aims to analyze to concept of da ta basis orientated on object and by comparing the
relational data basis, to stress out both the drawbacks of the relational data pattern and the
advantages the objects design show.
Keywords: objects, data design, connection among objects, referential integrity.
Similitudinea dintre cele doua abordari face Relatiile dintre obiecte si integritatea refe -
ca metodologia modelarii logice de date, sa rentiala
prezinte o baza rezonabila pentru o metodo- Într-un model de date de obiecte, relatiile
logie de proiectare a bazelor de date orientate sunt reprezentate utilizând atributele de refe-
spre obiecte. Cu toate ca aceasta metodologie rinta implementate în mod obisnuit prin iden-
este orientata în principal spre proiectarea tificatorii de obiecte (OID). În continuare se
bazelor de date relationale, totusi, modelul va analiza modul de reprezentare a relatiilor
poate fi transformat relativ simplu pentru dupa cardinalitatea lor: unu-la-unu (1:1),
modelele în retea si ierarhice. În modelul de unu-la-multi (1:M) si multi-la-multi (M:M).
date obtinut, relatiile de tip multi-la -multi si Relatii de tip 1:1
relatiile recursive sunt îndepartate. Aceste O relatie de tip 1:1 dintre obiectele A si B es-
schimbari nu sunt necesare pentru modelarea te reprezentata prin adaugarea la obiectul A a
orientata spre obiecte si pot fi omise. Modif i- unui atribut de referinta si, pentru a mentine
carile au fost introduse datorita puterii de integritatea referentiala, adaugarea la obiectul
modelare limitate a modelelor de date tradit i- B a unui alt atribut de referinta. De exe mplu,
onale. Utilizarea normalizarii în cadrul meto- în figura 1 este reprezentata relatia de tip 1:1
dologiei este înca importanta si nu trebuie dintre instantele Agentii si Manager.
omisa în proiectarea bazelor de date orientate
spre obiecte. Normalizarea este utilizata pe n- AGENTII: OID1 MANAGER: OID6
keri_Angajati si alta dintre Brokeri_Angajati primare si straine. O cheie straina leaga fie-
si Ordine_Tranzactionate. care aparitie din relatia copil de aparitia din
Relatii de tip M:M relatia parinte, care contine valoarea cores-
O relatie de tip M:M dintre obiectele Asi B punzatoare cheii candidat. Integritatea
este reprezentata prin adaugarea la fiecare referentiala semnifica faptul ca, în cazul în
obiect a unui atribut care contine un set de re- care cheia straina contine o valoare, aceasta
ferinte. De exemplu, în figura 3 este repre- trebuie sa se refere la o aparitie existenta în
zentata relatia de tip M:M dintre entitatile relatia parinte. Pentru a asigura integritatea
Client si Brokeri_Angajati. În proiectarea ba- referentiala, se specifica anumite constrâ n-
zelor de date relationale, se descompune rela- geri de existenta, care definesc conditiile în
tia de tip M:M în doua relatii de tip 1:M, co- care o cheie candidat sau straina poate fi in-
nectate printr-o entitate intermediara. Pornind serata, reactualizata sau stearsa.
de la acest model relational, este posibil sa se Pentru modelul obiectelor integritatea refe-
reprezinte într-un Sistem de Gestiune al Ba- rentiala necesita ca orice obiect la care se fa-
zelor de Date Orientat Obiect, asa cum este ce referire sa existe. De exemplu, sa consid e-
aratat în figura 4. ram relatia de 1:1 dintre instanta Agentii si
Integritatea referentiala instanta Manager, din figura 1, instanta
Integritatea referentiala pentru modelul rela- Agentii OID1, se refera la instanta Manager
tional se realizeaza prin intermediul cheilor OID6.
ORDINE_TRANZACTIONATE
OID2
Nr_ordin: 2
Tip: vânzare
Data: 12-aug-2002
Simbol_contract: ROL/USD
Cantitate: 100
Pret_u: 3000000
Termen: 6
Broker: OID4
Cod_ABK: OID1
AGENTII:
OID1
Cod_ABK: ABK5
Denumire: PitInvest
Localitate: Pitesti
Strada: AI Cuza, nr.4 ORDINE_TRANZACTIONATE
Telefon: O48123988 OID3
Ordine_tranzactionate:
{OID2, OID3 ,…} Nr_ordin: 3
Brokeri_Angajati: Tip: cumparare
{OID4, OID5 ,…} Data: 12-aug-2002
Manager: OID6 Simbol_contract: ROL/EURO
Cantitate: 50
Pret_u: 1000000
Termen: 3
Broker: OID4
Cod_ABK: OID1
BROKERI_ANGAJATII:
OID4
Broker: OID4
Nume_Broker: Ionele
Fig.2 . Relatiile de tip 1:M Sume_tranzactii: 10000000
Cod_ABK: OID1
Ordine_tranzactionate:
{OID2, OID3 ,…}
Revista Informatica Economica, nr. 1(25)/2003 111
Daca utilizatorul sterge aceasta instanta Ma- referentiala, sistemul detecteaza automat re -
nager, fara reactualizarea corespunzatoare a ferintele care nu sunt valabile si le atribuie
instantei Agentii, atunci integritatea referen- valoarea NULL sau nu permite stergerea.
tiala este pierduta. Pentru manipularea inte- § Sa se permita utilizatorului sa modifice si
gritatii referentiale pot fi utilizate diverse sa stearga obiectele si relatiile, atunci când
tehnici, si anume: ele nu mai sunt necesare. În acest caz, siste-
§ Sa nu se permita utilizatorului sa stearga mul mentine automat integritatea obiectelor
explicit obiectele. În acest caz, sistemul este prin utilizarea atributelor inverse. De exe m-
responsabil pentru „refacerea spatiului dis- plu, în figura 1 exista o relatie între Agentii si
ponibil”. Cu alte cuvinte, sistemul sterge au- Manager si o relatie inversa între Manager si
tomat obiectele, atunci când ele nu mai sunt Agentii. Când un obiect de tip Manager este
accesibile pentru utilizator. sters, este usor pentru sistem sa utilizeze rela -
§ Sa se permita utilizatorului sa stearga ob i- tia inversa, pentru a ajusta corespunzator re-
ectele când acestea nu mai sunt cerute. În ferinta în obiectul Agentii.
acest caz, pentru a întari integritatea
Broker: OID7
Broker: OID5 Nume_Broker: Dobre
Suma: 15000000 Sume_tranzactii: 7000000
Cod_ABK: OID1
Ordine_tranzactionate:
{OID2, OID3 ,…}
CLIENT: OID9
Client: {OID8}
Col_Cl: I4
Nume_Cl: SC Beta BROKER_ANGAJATII:
Localitate: Pitesti OID5
Telefon: 049235554
Investitie_max: 15000000 Broker: OID5
INVESTESTE Nume_Broker: Popa
Sume_tranzactii: 15000000
Cod_ABK: OID1
Ordine_tranzactionate:
{OID2, OID3 ,…}
Client: {OID8, OID9}
BROKER_ANGAJATII:
CONTRACTE: OID15 OID4