Sunteți pe pagina 1din 43

]

MODEL CONCEPTUAL
1.1. Date, informaii, modele de date

Instituiile, firmele, organizaiile trebuie s stocheze, s prelucreze i s regseasc nsemnrile (documentele) de care au nevoie. De e emplu la un liceu trebuie reinute notificri despre elevi (numele, anul absolvirii, media), despre profesori (numele, specializarea, vechimea, salariul), despre crile din bibliotec (titlul, autorul, cota crii). !ceste "pri# se numesc date. Datele sunt stocate pe diverse suporturi (registre, dosare sau n calculator) i n diverse formate electronice (tabele, foi de calcul sau baze de date). Datele pot fi ulterior prelucrate, selectate, combinate, sintetizate. $n urma acestor procese obinem informaii. Datele sunt fapte semnificative culese din lumea real pe baz de observaii i msuratori. Datele pot fi numere, caractere, imagini, sunete etc. stocate, accesate i transmise folosind calculatorul. % colecie de date reprezint un ansamblu de date organizat dup anumite criterii. Baza de date este o colecie organizat de date persistente, pe suport e tern, av&nd posibilitatea accesrii acestora. 'entru a ntreine o bazele de date se folosete un sistem de gestionare al bazelor de date (D()*). !cesta este un pachet soft+are care, n concordan cu conceptele i structurile unui model de date suport memorarea i regsirea datelor. , emple de *-(D. )* !//,**, d(ase, 0o 'ro, 'arado , )* *12. 3n model de date este rezultatul procesului de identificare i organizare a informaiilor necesare pentru modelarea unei situaii concrete din viaa real. )odelul de date menioneaz ce informaii (entiti) trebuie reinute n baza de date, care sunt relaiile dintre ele i cum ar trebui ele folosite. 3n astfel de model de date este, de e emplu, modelul entitate-relaie care se realizeaz folosind diagrama entitaterelaie (entity-relationship diagram, pe scurt ERD). )odelul de date reprezentat prin diagrama entitate4relaie se numete model conceptual i cuprinde ceea ce ne-am propus s realizm folosind. descrierea structurii datelor i a legturilor dintre acestea pentru ntreaga baz de date. )odelul conceptual este independent de modul de memorare a datelor. Modelul fizic al unui obiect include informaii detaliate, msurabile, cum ar fi volumul, lungimea, greutatea i este rezultatul concret la care ajungem n urma procesului de modelare. /ele dou modele trebuie s coincid. De aceea, n vederea realizrii modelului conceptual beneficiarul trebuie s e prime clar, far greeli ce dorete, s ofere o documentaie complet a proceselor care trebuie modelate. 2a realizarea modelului fizic informaticianul trebuie s cunoasc foarte bine cerinele beneficiarului, trebuie s se documenteze, astfel nc&t modelul teoretic s e prime c&t mai bine evenimentele i regulile conform crora se desfoar faptele n realitate. !stfel modelul conceptual va deveni model fizic.

Exemplu: O client merge la croitor i comand o rochie dintr-un catalog. Ceea ce clienta i dorete reprezint modelul conceptual. ns, n cele mai multe cazuri rochia nu este conform ateptrilor clientei, deoarece modelul din catalog era destinat unui manechin cu diensiuni standard, sau croitorul nu a msurat bine, sau pur i simplu era nepriceput. Rochia rezultat reprezint modelul fizic.
*unt patru modele importante de baze de date. Modelul ierarhic $n acest model, informaiile sunt organizate sub forma unui arbore descendent. 3n nod de pe un nivel inferior este subordonat unui singur nod din nivelul ierarhic superior dar poate fi n relaie cu n noduri aflate la nivelul inferior. !ltfel spus, fiecare nod are un singur nod printe dar poate avea unul sau mai multe noduri fiu. 'entru a gsi o anumit informaie trebuie s se porneasc de la nodul printe de pe primul nivel i s se coboare n arbore p&n la copilul care conine informaia respectiv. !stfel, dezavanta5ul este c o informaie are semnificaie numai n conte tul ierarhiei, accesarea fiind greoaie.
1

Modelul reea 6i acest model conine o aezare ierarhizat a nodurilor, cu deosebirea c un nod copil poate s aib mai multe noduri printe. $ntre nodurile printe i nodurile fiu sunt realizate cone iuni printr4o structur de legturi (pointeri). 0iecare nod poate avea un numr nelimitat de cone iuni. Dezavanta5ul modelului const n comple itatea structurilor i a limba5ului de manipulare. Modelul relaional ,ste modelul cel mai rsp&ndit i cel mai fle ibil, deoarece dispare calea de acces ierarhizat. (aza de date ese format din mai multe tabele (numite relaii) fiecare din ele fiind format din linii (nregistrri) i coloane (atribute). 7abelele sunt legate logic ntre ele prin valorile anumitor coloane (chei). !v&nd la baz teoria matematic a relaiilor, modelul a facilitat tratarea algoritmic a problemei proiectrii bazelor de date. ,ste uor de neles i de controlat, redundana (stocarea aceleiai informaii n tabele diferite) datelor este relativ redus. !plicaiile sunt independente de modul de stocare a datelor. Dezavanta5. ncercrile modelului de a nmagazina i informaii multimedia nu au fost nc standardizate. Modelul obiectual (azele de date obiectuale sunt destinate s suporte modele de obiecte comple e (date multimedia, documente, desene, arhive etc). )odelul este oarecum asemntor modelului reea, stocheaz o hart a ierarhiilor i relaiilor claselor de obiecte. !ceast reprezentare obiectual are ca efect independena aplicaiilor at&t fa de reprezentarea intern a datelor, c&t i fa de operaiile care se pot e ecuta asupra lor. *oluiile unor probleme precum optimizarea bazei de date sunt nc perfectibile.

1.2. Entiti i instane


Entitatea este elementul abstract ale crui date prezint interes pentru problema noastr. De e emplu, entitatea /!87, se refer la o carte #ideal#, identific&nd caracteristicile generale ale oricrei cri. ,ntitatea poate reprezenta un obiect, un fenomen, un concept distinct despre care pstrm informaii n baza de date. 9umele unei entitai este un substantiv, luat la singular.

Exemplu: putem avea entita ile! "#"$, C%R&", 'RO(")OR.


% instan a unei entiti este o concretizare a datelor descrise de entitatea respectiv. % anumit carte, cu caracteristicile ei concrete, reprezint o instan a entitii /!87,. Instanele sunt nedecompozabile.

Exemplu: persoana *'opescu %ndrei+ este o instan a entit ii "#"$, volumul ,%mintiri din copilrie+ este o instan a entit ii C%R&".
Con enii entru construirea diagramei ERD! entitatatea este reprezentat printr4un dreptunghi cu colurile rotun5ite. 9umele entitii este un substantiv comun, luat la singular i se scrie cu ma5uscule.

Exemplu: urmtoarele entit i


E%E& C'#(E )#*+E,*#

Diagrama entitate!relaie "E#D$ modeleaz, folosind anumite simboluri grafice i in&nd cont de anumite reguli, entitile care trebuie reinute n baza de date i relaiile dintre ele. % informaie trebuie stocat o singur dat ntr4un model de date. 3n atribut al unei entiti nu trebuie s fie atribut i n alt entitate. De asemenea, definirea entitilor i atributelelor lor n diagrama entitate4relaie nu trebuie s depind de limba5ul de programare sau de modelul de date utilizat. Diagrama trebuie s cuprind toate informaiile relevante pentru fenomenele concrete pe care dorim s le modelm, s reprezinte logic relaiile dintre ele i s nu conin date care se repet. 2a
2

alctuirea diagramei trebuie identificate i reprezentate entitile (substantive), proprietile (atributele) lor precum i relaiile (verbe) dintre entiti.

1.3. Atribute; tipuri i subtipuri


0iecrei entiti definite i este asociat un set de caracteristici sau atribute. 3n atribut este o proprietate ce descrie un anumit aspect al obiectului ce se nregistreaz n baza de date. !tributele sunt caracteristicile comune tuturor instanelor unei entiti. !tributele entitii servesc drept mi5loace prin care utilizatorii formuleaz interogri i interpreteaz rspunsuri c&nd caut informaii despre o anumit entitate. !tributele unei entiti pot fi determinate de obicei prin e aminarea entitii nsi. ,le descriu, clasific i specific o entitate. !stfel, instana (cazul particular) este identificat prin valoarea atributelor asociate entitii. 'entru o instan, un atribut are o singur valoare.

Exemplu: numele, CNP, clasa, media, data naterii sunt atribute ale entit ii "#"$- cota, titlul, autorul sunt atribute ale entit ii C%R&"- nume, vechime, specialitate i salariu sunt atribute ale entit ii 'RO(")OR. n func ie de nume putem identifica i deosebi ntre ei, elevii. n func ie de cota putem identifica o anumit carte din bibliotec.
!tributele care au obligatoriu o valoare pentru fiecare instan, se numesc atribute obligatorii "mandatorii$. !tributele care nu au obligatoriu o valoare pentru fiecare instan, se numesc atribute opionale. 'entru unele instane ele au valoarea null. !ceste proprieti definesc opionalitatea atributelor. !tributele sunt desemnate ca fiind opionale sau mandatorii, de la caz la caz, n funcie de fenomenele sau obiectele pe care dorim s le modelm.

Exemplu: la o bibliotec trebuie re inute obligatoriu pentru entitatea %.O/%& atributele nume, cod numeric personal, adresa, aceste atribute fiind mandatorii. Numrul de telefon sau adresa de e-mail a abonatului bibliotecii sunt atribute op ionale. 0ar n cazul unei pizzerii care onoreaz comenzi primite on-line, adresa de e-mail i numrul de telefon 1pentru o verificare a veridicit ii comenzii2 sunt atribute obligatorii.
!tributul are o valoare de un anumit tip, care poate fi. numeric, ir de caractere, data calendaristic etc. 7ipul reprezint un domeniu din care atributele au valori. "oate valorile unui atribut al unei entiti sunt de acela#i tip. 7ipul datei % anumit instan a unei entiti are o singur valoare pentru fiecare atribut. 0iecare tip de date permite operaii specifice.

Exemplu: atributele numele elevului, titlul crii, autorul din entit ile de mai sus sunt iruri de caractere- atributele media elevului, cota crii, vechimea i salariul profesorului sunt de tip numeric, data naterii este de tip dat calendaristic.
'rin atribut simplu (atribut atomic) se nelege un atribut care nu mai poate fi descompus n alte atribute, n caz contrar, atributul este compus (atribut neatomic).

Exemplu: atributele pot fi considerate simple sau compuse n func ie de circumstan ele i de obiectivele modelrii. *0ata naterii+ poate fi consideratt ca fiind compus din zi, luna, an care sunt atribute simple. *%dresa+ poate fi compus din strad, numr, bloc, eta3, apartament. 0ac este important s re inem toate datele referitoare la adresa, o considerm atribut compus altfel, simplu. %tributele *nume+ i *prenume+ sunt considerate simple, nu pot fi descompuse.

1.4. dentifi!ator uni!


3n identificator unic (3ID) este un atribut sau o combinaie de atribute care distinge o instan a unei entiti fa de oricare alt instan a acelei entiti. 0iecare instan a unei entiti trebuie s fie unic identificat.
3

Dac unicul identificator este format dintr4un singur atribut se numete identificator unic simplu. Dac unicul identificator este format dintr4o combinaie de dou sau mai multe atribute se numete identificator unic compus.

Exemplu: pentru entitatea "#"$ numele elevului nu identific unic un elev din clasa a 4-a 1pot e5ista mai multi elevi cu numele ,'opescu %ndrei+, fiind un nume des nt6lnit2, pe c6nd numele elevului mpreun cu data naterii sunt criterii dup care identificm clar un anumit elev. 0ac re inem codul numeric personal al elevului nu mai avem nici un dubiu, tiind c acesta este unic pentru fiecare persoan. 0e asemenea, pentru a deosebi dou sau mai multe e5emplare ale aceluiai volum din bibliotec s-a introdus atributul cota 1cr ii2- fiecare carte din bibliotec este unic identificat prin cota sa.
, ist entiti care nu au un identificator unic printre atributele lor. !ceasta nseamn c trebuie s introducem un nou atribut sau o combinaie de atribute care conin valori care s identifice unic fiecare instan a entitii. 3n astfel de atribut se numete atribut arti$icial, iar dac este i identificator unic se numete identificator unic artificial3n identificator unic secundar este un atribut diferit de unicul identificator (3ID), pe baza cruia se poate localiza unic o instan a unei entiti. ,ste un criteriu suplimentar de identificare a instanelor unei entiti. 'entru o entitate pot e ista unul sau mai multe astfel de atribute.

Exemplu: pentru un elev dintr-o coal nu este suficient numele i prenumele pentru a-l identifica unic. 0e aceea putem introduce atributul numr matricol care este un identificator unic. 0ac ns am avea ca atribut i codul numeric personal i numrul matricol, ambele identific unic o persoan, deci am putea considera c avem un identificator unic principal 1codul numeric2 i un identificator unic secundar 1numrul matricol2.
Con enii 'entru construirea diagramei ,8D. atributele entitii sunt niruite sub numele ei, cu litere mici. 0iecare atribut este precedat de un simbol (un marca5). 4un atribut obligatoriu (conine obligatoriu o valoare) are simbolul . 4un atribut opional (nu conine obligatoriu o valoare) are simbolul * 4un identi$icator unic (3ID) are simbolul / 4un identi$icator unic secundar are simbolul (/)

Exemplu: reprezentarea entit ilor "#"$, C%R&", 'RO(")OR cu atribute specifice!


E%E& : /9' ; numele ; clasa o media ; data naterii C'#(E : cota ; titlul ; autorul )#*+E,*# : numele ; specialitatea ; vechime o salariu

'entru entitatea C%R&" putem considera ca identificator unic codul 7)./, care este unic fiecrei cr i. 0ac dorim s rezervm un loc pentru o cltorie cu trenul, avem nevoie de entitatea #OC 1care re ine locurile dintr-un tren2 i putem considera ca identificator unic un grup de trei atribute! deoarece numrul locului nu este suficient re inem i vagonul 1deoarece n fiecare vagon locurile au aceeai numerotare2. 0ar nici aa nu este suficient s tim sigur la ce loc ne referim. &rebuie s re inem i un indicativ al trenului n care se afl vagonul i locul respectiv. 'entru entitatea "#"$ putem avea, dac re inem C/'-ul i numrul matricol, dou atribute care identific unic fiecare elev.

CARTE # ISBN *titlu *autor *an apariie

LOC #id_tren #vagon #loc *ora plecrii

ELEV # CNP (# nr !atricol * nu!ele * cla"a o !edia * data na#terii

% entitate poatea avea unul sau mai multe grupuri de instane care au ni#te proprieti speci$ice. !ceasta nsemn c ele au valori pentru atribute neregsite la celelalte instane ale entitii. $ntr4o asemenea situaie entitatea (devenit supertip) se divizeaz n subtipuri (grup de instane cu atribute specifice). Con enii 'entru construirea diagramei ,8D. subtipurile (sub4entitile) se deseneaz ca nite dreptunghiuri cu colurile rotun5ite n cadrul entitii supertip din care fac parte. Exemplu: dac vom considera

entitatea #7&"R%&8R9 putem defini subtipuri ale sale! 'RO:9, 'O":7", '8.#7C7)&7C9, 0R%;%&8R<7". (iecare dintre aceste crea ii literare are anumite caracteristici proprii. n cazul entit ii )'OR& n care dorim s facem o clasificare a sporturilor, am putea regsi ca subtipuri! )'OR&8R7 0" %'9, )'OR&8R7 C8 ;7/<"%, )'OR&8R7 0" 7%R/9.
LITERATUR P$%&I% P'B(ICIS)IC*
,% -P*

SPORT
C' .IN/%-

P+$&* ,+-.-)'+/I%
-()% SP$+)'+I

*ubtipul (sub4entitatea) motenete atributele i relaiile supertipului dar poate avea atribute i relaii proprii. 7oate instanele unei entiti pot avea i atribute comune, care sunt considerate atribute ale supertipului. !re sens s definim subtipuri pentru o entitate dac e ist cel puin dou grupuri de instane cu proprieti distincte. !stfel, instanele unui supertip sunt partiionate n subtipurile sale, fiecare instan aparin&nd unui singur subtip. 3n subtip poate fi, la r&ndul su supertip i poate avea subtipuri. 9u este ns indicat definim subtipuri care s conin mai mult de dou niveluri de divizare. *ubtipurile sunt definite n funcie de cerinele de modelare a unei situaii concrete, c&nd trebuie gsite nsuiri specifice unei subclase de obiecte, fenomene, etc.

Exemplu: Dac vom considera entitatea (7<8R% care re ine informa ii despre figuri geometrice. (iecare dintre aceste figuri are anumite propriet i! cercul are raza i centrul, ptratul are latura, triunghiul are lungimile celor trei laturi, dreptunghiul are lungimea i l imea laturilor. 'ot avea i propriet i comune cum este culoarea i tipul liniei. 0ac relum entitatea )'OR&, ,sporturile de ap+ pot avea la r6ndul lor subtipuri cum sunt 7/O& i C%/O&%=- ,sporturile de iarn+ pot avea la r6ndul lor '%&7/%=, >OC>"7, )C>7.

FIGURA #id *culoare *tip linie

TRIUNGHI #id *latura1 *latura2 *latura3

SPORT C' .IN/%-

CERC #id *centru *ra3a PTRAT #id *latura DREPTUNGHI #id *lungi!e *li!e

,% -P*
IN$) C-N$)-1

,% I-+N*
P-)IN-1 2$C2%I SC2I

<aloarea unui atribut al unei entiti poate fi uneori supus variaiei, n funcie de sursa folosit ca punct de referin. !tributul a crui valoare se poate schimba n timp, se numete atribut olatil.

Exemplu: n cadrul entit ii "#"$ atributul vrsta 1elevului2, evident este un atribut volatil. 0e aceea este indicat s re inem ca atribut data naterii, v6rsta calcul6ndu-se, n acest caz, prin scderea datei naterii din data curent.

1.". #elaii
#elaiile sunt e%presii verbale care indic asocierile, legturile logice care se formeaz ntre entiti. De regul, entitile sunt substantive, iar relaiile sunt verbe i ele se deduc din specificaiile (documentaia) beneficiarului. $n ma5oritatea cazurilor relaiile sunt binare (se definesc ca fiind legturi ntre dou entiti), dar sunt i relaii recursive, care implic o singur entitate.

Exemplu: putem considera entit ile #OC i C9#9&OR. ntre ele se poate defini o rela ie de legtur, binar.
8elaiile au proprietatea de opionalitate care se refer la caracterul se relaiei de a fi opional sau obligatorie. % relaie este obligatorie dac orice instan a entiti trebuie s fie legat de una sau mai multe instane ale celeilalte entiti. 8elaia obligatorie este e primat folosind cuv&ntul = trebuie#. % relaie este opional dac orice instan a entiti ar putea s fie legat de una sau mai multe instane ale celeilalte entiti. 8elaia opional este e primat folosind e presia = poate $i#.

Exemplu: ntre entit ile #OC i C9#9&OR e5ist rela iile! *8n loc poate fi ocupat de un cltor.+ ? este o rela ie op ional *8n cltor trebuie s ocupe un loc.+ ? este o rela ie obligatorie 'entru entit ile C%R&" 0" 70"/&7&%&" i '"R)O%/% se definesc rela iile! *O carte de identitate trebuie s aparin unei singure persoane.+ ? este o rela ie obligatorie *O persoan trebuie s aib o unic carte de identitate.+ ? este o rela ie obligatorie.
4

Con enii 'entru construirea diagramei ,8D. relaia dintre dou entiti este reprezentat printr4un segment care le unete. !cesta poate fi desenat 4cu linie continu, dac relaia este obligatorie pentru entitatea respectiv, sau 4cu linie punctat, dac relaia este opional pentru acea entitate. 9umele relaiei (un verb sau o e presie verbal) se scrie deasupra liniei care desemneaz relaia pentru entitatea din st&nga i sub linie pentru entitatea din dreapta. 'entru a realiza diagrama entitate4relaie care s modeleze cerinele beneficiarului trebuie s se determine i un ansamblu comple% de relaii, care se realizeaz ntre mai mult de dou entiti. 8elaiile au proprietatea de cardinalitate care se refer la numrul de instane dintr4o entitate care sunt n corelaie cu un numr de instane din alt entitate. Con enii 'entru construirea diagramei ,8D, captul segmentului care desemnez relaia poate s fie. 4simplu, semnific&nd faptul c o unic instan a entitii respective este conectat cu alt entitate, sau 4cu trei picioru#e, ceea ce nsemn c mai multe instane ale entitii respective sunt n relaie cu cealalt entitate.

Citirea unei diagrame entitate!relaie "E#D$ $n general, dac avem o relaie, ntre entitatea ! i entitatea (, vom citi. +iecare numele entitii A opionalitatea (trebuie > poate) numele relaiei cardinalitatea (unul i numai unul > unul sau mai muli) numele entitii B/onform acestei reguli si in&nd cont c o relaie are dou capete vom citi nt&i diagrama de la st&nga la dreapta apoi de la dreapta la st&nga.

nu!e relaie nu!e relaie B

!stfel sunt puse n legatur toate elementele componente ale unei diagrame entitate4relaie.

Exemplu: dac vom considera entit ile =8C9&OR i <O# prin intermediul crora dorim s re inem golurile marcate n timpul unui meci de fotbal, vom avea urmtoarea diagram!
JUCTOR # id *nu!e *po"t " !arc6e3e e"te !arcat GOL #id_!eci *!inut $ o5"ervaii

Citim diagrama astfel: (iecare 3uctor poate s marcheze unul sau mai multe goluri. (iecare gol trebuie s fie marcat de un singur 3uctor.
7

#elaia unu!la!unu % relaie n care fiecrei instane a unei entiti i corespunde cel mult o instan a altei entiti este o relaie de tip unu-la-unu (one4to4one). 8elaia unu4la4unu se mai noteaz ?.?. * considerm entitile 2%/ (n tren) i /@2@7%8 ntre care definim o relaie.
CLTOR Pope"cu -ndrei Ione"cu .aria ,iaconu ,ana &a6aria Cri"tian 18 32 17 89 LOC 23 10 20 09 39

%bservm c unui cltor i corespunde un singur loc (conform rezervrii fcute) n mi5locul de transport i unui loc i poate corespunde cel mult un cltor (unele locuri pot fi neocupate). Deci, e ist o relaie ?.? ntre cele dou entiti. )ai mult, relaia este opional pentru entitatea 2%/ i obligatorie pentru entitatea /@2@7%8. 'entru entitatea 2%/ identificatorul unic (3ID) este o combinaie format din atributele idAtren, vagon, loc (deoarece un loc este unic identificat doar dac se cunoate i vagonul n care se afl i numrul trenului, idAtren). Diagrama entitate4relaie se deseneaz astfel.
CLTOR # id *nu!e *"erie 5ilet LOC #id_tren #vagon #loc *ora plecrii

" ocupe

:i ocupat

&itim diagrama ast$el! 0iecare cltor trebuie s ocupe un loc. 0iecare loc poate fi ocupat de un singur cltor.

Exemple: 1. "ntit ile C%R&" 0" 70"/&7&%&" i '"R)O%/% sunt ntr-o rela ie de @!@, obligatorie la ambele e5tremit i.
CARTE DE IDENTITATE #"eria *:otogra:ia *data eli5errii *vala5ilitate

" aparin

" ai5

PERSOANA #CNP *nu!e *prenu!e

Citim diagrama astfel: (iecare carte de identitate trebuie s apar in unei singure persoane. (iecare persoana trebuie s aib o carte de identitate. 2. 0ac lum n considerare entit ile "C>7'% i %/&R"/OR, putem considera c fiecare echip poate s aib un antrenor 1are i intervale n care nu are antrenor2 i un antrenor 1o persoan2 poate antrena o echip.
ANTRENOR #nu!e *prenu!e $ per:or!ane $ v;r"ta " antrene3e ECHIPA #id *nu!e *"pon"or $ o5"ervaii

e"te antrenat

Citim diagrama astfel: (iecare antrenor poate s antreneze o singur echip. (iecare echip poate fi antrenat de un singur antrenor.

#elaia unu!la!mai!muli % relaie n care fiecrei instane a unei entiti i corespunde una sau mai multe instane ale altei entiti este o relaie de tip unu-la-mai-muli (one4to4manB). 8elaia unu4la4mai4muli se mai noteaz ?.) (sau ).?, mai4muli4la4unu). 8elaiile de tipul unu4la4mai4muli sunt cel mai des nt&lnite n practic. * considerm entitile C3/@7%8 (ntr4o echip de fotbal) i -%2 (marcat n timpul unui meci) ntre care definim o relaie.
JUCTOR GOL Pope"cu Ione"cu ,iaconu &a6aria Popa 19 18 32 17 <9 10 20 09 39

%bservm c un 5uctor poate s marcheze zero, unul sau mai multe goluri. Deci, e ist o relaie ?.) ntre cele dou entiti. )ai mult, relaia este opional pentru entitatea C3/@7%8 i obligatorie pentru entitatea -%2. Diagrama entitate4relaie se deseneaz astfel.
<

JUCTOR # id *nu!e *po"t

" !arc6e3e

e"te !arcat

GOL #id_!eci *!inut $ o5"ervaii

&itim diagrama ast$el! 0iecare 5uctor poate s marcheze unul sau mai multe goluri. 0iecare gol trebuie marcat de un singur 5uctor.

Exemple: 1.0ac lum n considerare entit ile R"<7:OR i %C&OR vom avea ntre ei o rela ie @!;, op ional la st6nga i obligatorie la dreapta.
REGIZOR #id_regi3or *nu!e $ o5"ervaii " reali3e3e FILM #id_:il! *durata *anul apariiei $ =nca"ri

e"te reali3at

Citim diagrama astfel: (iecare regizor poate s realizeze unul sau mai multe filme. (iecare film este realizat de un singur regizor. 2.0ac vom considera entit ile C#907R" i C%;"R%, vom putea defini o rela ie de tipul @!; ntre cele dou entit i.
CLDIRE #id_cldire *adre"a *proprietar " ai5 CAMERA #id_ca!era *"upra:aa " aparin

Citim diagrama astfel: (iecare cldire trebuie s aib una sau mai multe camere. (iecare camer trebuie s apar in unei singure cldiri.

#elaia mai!muli!la!mai!muli % relaie n care mai multor instane ale unei entiti i corespund una sau mai multe instane ale altei entiti este o relaie de tip mai-muli-la-mai-muli (manB4to4manB). 8elaia mai4muli4la4mai4muli se mai noteaz ).). * considerm entitile /!87, i ,DI738! ntre care definim o relaie.

19

CARTE

EDITURA

-!intiri din copilrie .ara %nig!a $tiliei Ion .e#terul .anole >raii 1deri

Sig!a )eora -ll 2u!anita" Nicule"cu

%bservm c unei cri i corespunde zero, una sau mai multe edituri i unei edituri i poate corespunde zero, una sau mai multe cri. Deci, e ist o relaie ).) ntre cele dou entiti. )ai mult, relaia este opional pentru ambele entitati. Diagrama entitate4relaie se deseneaz astfel.
CARTE # ISBN *titlu *autor *an apariie pu5licat EDITURA #id *adre"a *tele:on

pu5lic

&itim diagrama ast$el! 0iecare carte poate fi publicat de una sau mai multe edituri. 0iecare editur poate publica una sau mai multe cri.

Exemple: 1. 0ac lum n considerare entit ile RO# i %C&OR, vom avea ntre ele o rela ie de tipul ;!;.
ROL #id_rol *titlu :il! *regi3or *an apariie ?ucat " ?oace ACTOR #id_actor *nu!e *prenu!e *v;r"ta

Citim diagrama astfel: (iecare rol poate fi 3ucat de unul sau mai mul i actori. (iecare actor poate s 3oace unul sau mai multe roluri. 2. 0ac lum n considerare entit ile %.O/%& i R"$7)&% vom avea o diagram de tipul ;!;.
ABONAT #id_a5onat *nu!e *prenu!e *adre"a " "e a5one3e di"tri5uit REVISTA #id_revi"ta *nu!e *nu!r apariii *pre 11

O persoan devine abonat dac are cel pu in un abonament la o revist, deci este obligatorie la st6nga. Citim diagrama astfel: (iecare abonat trebuie s se aboneze la una sau mai multe reviste. (iecare revist poate fi distribuit la unul sau mai mul i abona i.

#ezol area relaiilor 0mai muli la mai muli1 $n practic nu sunt acceptate relaii de tipul mai4muli4la4mai4muli. /&nd apar asemenea relaii ele trebuie nlocuite prin dou relaii de tipul unu4la4mai4muli. 'entru a realiza aceast nlocuire se introduce ntre cele dou entiti o nou entitate numit entitate de intersecie. !ceasta preia atribute din cele dou entiti iniiale, dar poate avea i atribute proprii. 3nicul identificator al entitii de intersecie provine din cele dou entiti iniiale, este cel mai adesea o combinaie de atribute, dar se poate defini i un identificator unic artificial.

Exemple: 1. 0ac lum n considerare entit ile %.O/%& i R"$7)&% de mai sus, vom avea o diagram de tipul ;!;, ceea ce nu specific e5act care instan din prima entitate este n legtur cu care instan din a doua entitate. 'entru a rezolva aceast problem vom considera entitatea de intersec ie %.O/%;"/& care preia, av6nd ca atribute, identificatorul unic de la R"$7)&" 1idArevista2 i identificatorul unic de la %.O/%& 1idAabonat2.
ABONAMENT # id_a5onat # id_revi"ta *data
pentru pentru

ABONAT #id_a5onat *nu!e *prenu!e *adre"a

" "e a5one3e

di"tri5uit

REVISTA #id_revi"ta *nu!e *nu!r apariii *pre

'utem introduce entitatea de intersec ie %.O/%;"/& care preia dou atribute din entit ile ini iale! idAabonat i idArevista. %ceasta entitate va fi n rela ie de tipul ;!@ fa de cele dou entit i ini iale, pe l6ng care poate s aib i atribute proprii 1de e5emplu data la care se face abonamentul2. 'entru a marca faptul c aceast entitate a fost nou introdus i c unicul identificator este realizat din atribute mpreun cu rela ia se folosete rela$ia barat%. 2. ) lum n considerare entit ile "#"$ i C8R), care se refer la cursurile op ionale la care se pot nscrie elevii. "ste evident c avem o rela ie ;!;. (iecare elev trebuie s se nscrie la unul sau mai multe cursuri, dar pot fi cursuri pentru care nu opteaz nimeni.
ELEV #id_elev *nu!e *prenu!e *adre"a
" "e =n"crie

:i :recventat

CURS #id_cur" *denu!ire *pro:e"or *nu!r ore

12

,Rezolvarea+ rela iei ,mai mul i la mai mul i+ se face prin adaugarea unei noi entit i de intersec ie /)CR7"R", care preia de la entit ile ini iale idAelev i idAcurs.
INSCRIERE # id_elev # id_cur"

pentru

pentru

ELEV #id_elev *nu!e *prenu!e *adre"a

" "e =n"crie

:i :recventat

CURS #id_cur" *denu!ire *pro:e"or *nu!r ore

Identificatorul unic al unei relaii poate fi format i dintr4o combinaie dintre un atribut #i o relaie , caz n care relaia se reprezint ca o relaie barat'

Exemplu: pentru entitatea "#"$, faptul c un elev este n clasa a B-a nu clarific n totalitate clasa n care se afl elevul. #a o coal pot fi mai multe clase a B-a identificate prin litere 1%,.,C,...2 0eci ntre entit ile "#"$ i CCO%#% trebuie definit o rela ie! pentru elev unicul identificator este o combina ie ntre rela ie i atributul su clasa. O astfel de rela ie se bareaz la captul de ctre entitatea al crei atribut l considerm.
ELEV *nr !atricol *nu!e *cla"a =n"cri" COALA *id *indicativ cla"a avea

% relaie este redundant c&nd poate fi dedus din alte relaii de5a definite. 2a realizarea diagramei entitate4relaie trebuie evitate cazurile n care apar relaii redundante.

Exemplu: dac vom considera entit ile %/<%=%&, )"( 0"'%R&%;"/&, ;%/%<"R vom avea o diagram n care re inem aceste entit i i rela iile dintre ele!
ANGAJAT
" :ie condu" " :ie condu"

" ra"pund

SEF DEPARTAMENT

" :ie condu"

" ra"pund

" ra"pund

MANAGER

/u mai este necesar s avem definit o rela ie ntre entit ile %/<%=%& i ;%/%<"R deoarece ntre ele e5ist indirect o rela ie prin intermediul entit ii )"( 0"'%R&%;"/&. %stfel rela ia ntre
13

%/<%=%& i ;%/%<"R este redundant. )e pot defini ns alte rela ii ntre cele dou entit i.
% relaie este ierarhic dac apare la o diagram n care un anumit tip de relaie se repet de mai multe ori.

Exemple: 1. % ierarhie dintr-o asociatie de nonguvernamental, care are entit ile 'R")"07/&", $7C"'R")"07/&", ;";.R8 se reprezint printr-o rela ie ieraric. 2.8n alt e5emplu de rela ie ierarhic este urmtorul! Considerm entitatea '8/C& care are ca atribute coordonatele 15 i D2. Cu a3utorul punctelor putem defini segmente n plan re in6nd coordonatele e5tremit ilor acestora. 0eci avem entitatea )"<;"/& care are ca atribute cele dou coordonate. 'e baza segmentelor putem defini n plan triunghiuri prin nregistrarea segmentelor care le compun. 0eci vom avea entitatea &R78/<>7 care are ca atribute segmentele corespunztoare celor trei laturi. 'entru acest e5emplu, ierarhia este!
PUNCT *coord @ *coord A " aparin " conin " r"pund VICEPRESEDINTE " :ie condu" condu" " ra"pund PRESEDINTE " conin TRIUNGHI *latura 1 *latura 2 *latura 3 SEGMENT *punct1 *punct2 " aparin

MEMBRU " :ie condu"

Dac o instan dintr4o entitate (aflat n relaie cu o instan din alt entitate), poate fi relaionat cu o alt instan din cea de4a doua entitate, spunem c relaia este transferabil. !ltfel spunem c relaia este netransferabil. Con enii 'entru construirea diagramei ,8D. nontrans$erabilitatea relaiei se reprezint n diagram printr4un romb.

Exemple: 1. "ntit ile C%R&" 0" 70"/&7&%&" i '"R)O%/% sunt n rela ie i aceasta nu e transferabil pentru nici una dintre entit i.
CARTE DE IDENTITATE #"eria *:otogra:ia *data eli5errii *vala5ilitate " aparin PERSOANA #CNP *nu!e *prenu!e

" ai5

14

2. 0ac lum n considerare entit ile "C>7'% i %/&R"/OR, evident rela ia este transferabil la ambele capete, un antrenor poate s schimbe echipa pe care o antreneaz.
ANTRENOR #nu!e *prenu!e $ per:or!ane $ v;r"ta " antrene3e ECHIPA #id *nu!e *"pon"or $ o5"ervaii

e"te antrenat

3. 0ac vom considera o rela ionare ntre entit ile #OC 1din autobuz2 i C9#9&OR care l ocup, evident, c vom avea o rela ie transferabil ctre entitatea C9#9&OR i netransferabil ctre entitatea #OC.
CLTOR # id *nu!e *"erie 5ilet " ocupe LOC #id_tren #vagon #loc *ora plecrii

e"te ocupat

4. "ntit ile =8C9&OR i <O# sunt n rela ie i aceasta nu e transferabil pentru entitatea <O#..
JUCTOR # id *nu!e *po"t " !arc6e3e GOL #id_!eci *!inut $ o5"ervaii

e"te !arcat

#elaiile recursi e sunt legturi definite de la o instan a unei entiti la una sau mai multe instane ale aceleiai entiti. Con enii 'entru construirea diagramei ,8D. relaia recursiv se deseneaz ca un arc de cerc de la dreptunghiul ce desemneaz entitatea la el nsui.

Exemplu: vom considera entitatea C"&9E"%/ 1locuitor al unui ora2. 'rimarul oraului este i el un locuitor al oraului, dar n acelai timp este n rela ie cu ceilal i ceta eni i vom avea deci o rela ie recursiv.
CETEAN # CNP * nu!e * adre"a o tele:on * ocupaia

condu" de

" conduc

Astfel, *8n cet ean poate s fie primar.+ ? este o rela ie op ional *8n primar trebuie s fie cet ean.+ ? este o rela ie obligatorie.
10

2n concluzie3 4ntre dou entiti pot exist urmtoarele tipuri de relaii: 8elaie ?.? obligatorie la ambele capete 8elaie ?.? opional la ambele capete 8elaie ?.? opional la st&nga, obligatorie la dreapta 8elaie ?.? obligatorie la st&nga, opional la dreapta 8elaie ).? opional la st&nga, obligatorie la dreapta 8elaie ?.) obligatorie la st&nga, opional la dreapta 8elaie ).) obligatorie la st&nga i la dreapta 8elaie ).) opional la st&nga i la dreapta 'ot e ista relaii ierarhice (ntre entiti care se deseneaz echivalent, $olosind o relaie recursiv'

Exemplu: dac lum n considerare o ierarhie militar vom avea *soldat+ subordonat unui *sergent+, subordonat unui *locotenent+, subordonat unui *cpitan+, subordonat unui *general+. )e pot defini entit i care au e5act aceste denumiri. (iecare instan a entit ilor are un nume, un C/', o dat a intrrii n armat. "chivalent cu ierarhia se poate desena o rela ie recursiv.
SOLDAT *CNP *nu!e " :ie "u5ordonat " conduc SERGENT *CNP *nu!e " :ie "u5ordonat " conduc LOCOTENENT *CNP *nu!e " :ie "u5ordonat " conduc COLONEL *CNP *nu!e " :ie "u5ordonat " conduc GENERAL *CNP *nu!e " conduc MILITAR *CNP *nu!e *grad " :ie "u5ordonat

14

'ot e ista relaii (ntre o entitate #i un subtip al altei entiti .

Exemplu: vom considera entitatea 7/$")&7E7" care are ca subtipuri investi ii fcute la burs, n titluri de stat, n asigurri, n domeniul imobiliar. 'entru aceste investi ii se cunoate suma i moneda. 'entru titlurile de stat este important s se cunoasc societatea emitent, performan ele ei, deci subtipul &7&#8 0" )&%& se afl n rela ie cu entitatea ";7&"/&. O investi ie la burs presupune urmrirea tranzac iilor, a indicilor bursieri, deci o rela ie ntre sub-entitatea .8R)% i entitatea &R%/:%CE7". 7nvesti iile imobiliare necesit cunoaterea destina iei, a facilit ilor i a func ionalit ii imobilului, deci o rela ie ntre 7;O.7# i 0")&7/%E7".
PERSOANA #CNP *nu!e *prenu!e *data na#terii *carte de identitate *adre"a " :ac INVESTIIE #id *"u!a *!oneda " :ie :cut ASIGURARE *"u!a a"igurat *:ir!a *perioada *clau3e

EMITENT #cod e!itent *nu!e *valoare *per:or!ana

" lan"e3e

lan"at

TITLU DE STAT *do5;nda *durata *ri"c

TRANZACIE #nu!r *valoare *data *indice

" :ie :cut

" "e :ac

BURSA *nr aciuni *"ocietate *cotaie

DESTINAIE #cod *:uncionalitate *:aciliti

" :ie a

" ai5

IMOBIL *adre"a *valoare de pia *an con"trucie *"upra:aa

Matricea diagram *e folosete pentru a reine relaiile dintre entiti n modelul entitate relaie. ,ste o matrice ptratic, n care se rein corespondenele dintre entiti. 'e prima linie i pe prima coloan se scrie numele entitilor, iar n interior se scriu numele relaiilor dintre ele. ,ste util c&nd avem un numr mare de entiti, deoarece red ntr4o form "compact# numele relaiilor dintre ele dar nu reine opionalitatea i cardinalitatea lor. )arcm cu "D" ntr4o csu dac nu e ist relaie ntre cele dou entiti.

Exemplu: Considerm c la un teatru sunt 3ucate, ntr-o stagiune mai multe spectacole. (iecare spectacol are un nume i un regizor. n fiecare spectacol 3oac unul sau mai mul i actori ai teatrului. (iecare spectacol are una sau mai multe reprezenta ii, la date i ore precizate. 0esenm mai nt6i diagrama, apoi matricea diagram asociat. $om avea entit ile %C&OR, )'"C&%CO# i R"'R":"/&%E7". %tributele fiecrei entit i le deducem din conte5t. n matricea diagram este scris numele rela iei care se realizeaz ntre entitatea de pe linie i cea de pe coloan.
17

ACTOR #id_actor *nu!e $ aptitudini

" ?oace ?ucat

SPECTACOL #id_"pectacol *nu!e *regi3or " ai5

" :ie a REPREZENTAIE #id_"pectacol *data *ora

!/7%8 *',/7!/%2 8,'8,E,97!FI,

!/7%8 4 5ucat 4

*',/7!/%2 s 5oace 4 s fie a

8,'8,E,97!FI, 4 s aib 4

#eguli structurale3 reguli procedurale #egulile conin afirmaii (sentine) care descriu i generalizeaz legile dup care se desfoar n realitate fenomenul care trebuie modelat prin intermediul ,8D. #egulie structurale indic datele care vor fi stocate n entiti i care sunt relaiile dintre aceste date.

Exemple: @.0ac ne referim la rela iile care e5ist ntr-un teatru, vom avea regulile structurale! *ntr-o sal de teatru se 3oac o singur pies la un moment dat.+ sau *8n spectacol are un regizor i se desfoar conform unui scenariu.+ F.0ac ne referim la campionatul de fotbal, avem regula *(iecare echip 3oac un singur meci n cadrul unei etape.+ G.0ac lum ca e5emplu o or de curs, avem reguli structurale! *n cadrul unei ore profesorul pred o lec ie.+ sau +0up ce este ascultat elevului i se acord o not.+
#egulile procedurale indic ordinea n care au loc procesele care vor fi modelate prin intermediul diagramei.

Exemple: @.0ac ne referim la o bibliotec colar, o reguli procedurale sunt! *8n elev poate imprumuta o carte dac are permis la bibliotec.+ sau *O carte poate fi mprumutat altui cititor dac va fi restituit de actualul cititor.+ F.0ac ne referim la o pizzerie care onoreaz comenzi la domiciliu, avem regula procedural! +'izza va fi livrat numai dac a fost facut o comand de ctre un client.+ G.0ac ne referim la entitatea )&80"/& avem regula procedural *Ca s devin student fiecare elev trebuie s fi absolvit un liceu.+
3nele dintre aceste reguli nu pot fi efectiv reprezentate grafic n diagram i ele vor fi precizate n documentaia care nsoete i descrie diagrama, sub form de presupuneri sau constr&ngeri. !ceste reguli sunt implementate n programe, dup crearea tabelelor.

Exemplu: nu se poate modela prin diagram cerin a! *'entru anga3a ii corec i se va face o mrire de salariu de @HI de la @ ianuarie+, dar la implementarea bazei de date poate fi cuprins aceast condi ie.

18

)resupuneri "ipoteze$. conin afirmaii care sunt acceptate ca fiind adevrate fr a fi nevoie s mai fie demonstrate. !ceste afirmaii difer de la o problem la alta, n funcie de situaiile concrete care se modeleaz.

Exemplu: dac ne referim la anga3a ii unei firme presupunem c *%nga3a ii au contract de munc pe perioad nedeterminat.+ C6nd re inem informa ii referitoare la elevi presupunem c *n fiecare an colar, anul de studiu al elevului se modific.+ sau */umrul de absen e al unui elev este J la nceputul fiecrui an colar.+
Constr4ngerile sunt restriciile care se aplic entitilor i relaiilor dintre ele. /onstr&ngerile se definesc n funcie de cerinele problemei care este modelat.

Exemplu: dac lum n considerare un cinematograf cu o singur sal de proiec ie avem constr6ngerea *#a cinematograf nu ruleaz dou filme n acelai timp.+ 0ac ne referim la o competi ie sportiv avem constr6ngerea *Competi ia sportiv se desfoar dac are sponsori.+
2a crearea bazelor de date apar unele probleme importante de care trebuie s inem seama pentru a prote5a i a e ploata datele n condiii optime. Din acest motiv vom evidenia c&teva restricii 4 reguli de integritate ! pe care trebuie s le impunem datelor n momentul efecturii operaiilor de adugare, tergere sau modificare a datelor. #estriciile indentificatorului unic: un identificator unic trebuie s aib o valoare unic pentru fiecare instan i nu poate avea valoarea zero (null). !cest tip de restricie se impune n cadrul operaiilor de adugare sau modificare a datelor. #estricii refereniale: !ceste restricii se impun n cazul n care dou entiti sunt n relaie una cu cealalt i se dorete tergerea, modificarea sau adugarea unor noi instane.

Exemplu: n cazul entit ilor C7&7&OR7 i 7;'R8;8&, unui cititor i corespunde n entitatea ;'R8;8& 1care memoreaz datele referitoare la cr ile mprumutate2 una sau mai multe instan e. Cterg6nd un cititor din entitatea C7&7&OR7, este posibil s rm6n una sau mai multe mprumuturi KorfaneK pentru entitatea 7;'R8;8&, adic pentru un cod de cititor care nu mai e5ist avem una sau mai multe cr i mprumutate. 'robleme pot aprea la adugarea unei instan e la entitatea 7;'R8;8& se poate nt6mpla s adugm un cod de cititor care nu mai e5ist. 7n situa iile de mai sus spunem c baza de date devine inconsistent. %ceste probleme se rezolv impun6nd restric ii n cazul opera iilor de adugare, modificare sau tergere, astfel nc6t opera iile respective s se realizeze numai dac sunt respectate acele restric ii.
#estricii de comportament: 3nele atribute pot avea doar valori dintr4un anumit domeniuG aceste condiii se vor impune la adugarea sau modificarea datelor pentru atributele respective.

Exemplu. cota cr ii trebuie s fie ntre anumite limite @JJJ i @JJJJ, v6rsta nu poate avea valori negative, o dat.valendaristic trebuie scris corect, etc
3neori este necesar s impunem reguli de comportament pentru ntreaga entitate de e emplu dac avem o entitate intersecie, folosit pentru a realiza legtura ntre alte dou entiti, vom interzice tergerea acesteia at&ta timp c&t e ist cele dou entiti pe care le leag. 'plicaii: realizarea E#D conform unui scenariu dat 'plicaia 1 ! Cinematograf $ntr4un ora e ist mai multe cinematografe la care sunt vizionate, pe r&nd, mai multe filme. 'entru fiecare film se cunoate titlul, regizorul, anul realizrii. 3n film este repartizat unui singur cinematograf, la care va avea proiecii ntr4o perioad i de la o or precizat. *pectatorii interesai pot suna sau se pot deplasa la cinematograf pentru a afla programul de difuzare a filmelor. )e cere s se realizeze o diagram entitate-relaie care s permit o c*t mai $le%ibil reprezentare a datelor concrete prezentate (n scenariul de mai sus'
1<

!naliz&nd scenariul deducem urmtoarele constr&ngeri. 4 fiecare film are un singur regizor 4 fiecare cinematograf are un numr de telefon 4 la fiecare cinematograf se proiecteaz un singur film la un moment dat $ntr4o prim faz s definim entitatea 0I2) care s conin atributele identificate n cadrul scenariului. titlul, regizorul, anul realizrii, cinematograf, perioada, ora, telefon, adresa.
FILM *titlu *regi3or *an apariie *nu!e cine!atogra: *perioada *ora *tele:on *adre"a

+bservm c apar urmtoarele probleme! 4 nu se poate reine un nou film dec&t dac tim la care cinematograf, n ce perioad i de la ce or va rula. 4 nu putem s eliminm un film deoarece eliminm i informaiile despre cinematograf (adesa, telefon) 4 numrul de telefon al cinematografului se poate schimba i dac dorim s facem schimbarea trebuie fcut la fiecare instan (film) n parte 4 avem grupuri repetitive de date. pentru fiecare film nou nregistrat reinem toate informaiile despre cinematograf (nume, telefon, adresa) 7rebuie s gsim rezolvare la aceste probleme care au aprut datorit faptului c am reinut "la grmad# toate informaiile date. ,ste indicat s grupm separat informaiile despre filme i cinematografe cre&nd dou entiti separate. $ntre cele dou entiti e ist o relaie de tipul ).? (la un cinematograf pot rula unul sau mai multe filme).
FILM *titlu *regi3or *an apariie CINEMATOGRAF *nu!e cine!atogra: *perioada *ora *tele:on *adre"a

rula

g3dui

&itim aceast relaie! 0iecare film poate rula la un singur cinematograf. 0iecare cinematograf poate gzdui unul sau mai multe filme. +bservm c am rezolvat problemele de mai sus! 4 putem aduga un nou film, fr s fie implicit legat de numele cinematografului 4 putem elimina filme fr s afectm informaiile despre cinematograf 4 dac se modific numrul de telefon al cinematografului, modificarea se face ntr4un singur loc Dar nc mai avem grupuri repetitive de date. pentru fiecare orar de proiecie a unui film reinem i informaiile despre cinematograf. <om rezolva aceast problem prin divizarea entitii /I9,)!7%-8!0 n dou entiti. &itim aceste relaii! 0iecare film poate rula la un singur cinematograf. 0iecare cinematograf poate gzdui unul sau mai multe filme. 0iecare cinematograf poate programa una sau mai multe proiecii. 0iecare proiecie trebuie s se realizeze la un singur cinematograf.

29

PROIECIE *nu!e cine!atogra: *perioada *ora *titlu


" "e reali3e3e

progra!a

FILM *titlu *regi3or *an apariie

rula

g3dui

CINEMATOGRAF *nu!e cine!atogra: *tele:on *adre"a

'plicaia 5 6 Biblioteca 2a o bibliotec trebuie s se in evidena tuturor crilor, a crilor mprumutate i a cititorilor. 'entru fiecare carte se cunoate titlul, autorul, editura i anul ediiei precum i codul de nregistrare al crii n bibliotec. Dac cineva solicit o carte, funcionarul de la bibliotec trebuie s o gseasc c&t mai repede i pentru aceasta trebuie s gseasc locaia crii. trebuie s cunoasc raftul pe care se afl, anul n care a intrat cartea in bibliotec i valoarea crii. De asemenea, bibliotecarul, pentru a avea o c&t mai corect eviden a crilor, are nevoie s cunoasc anul n care se caseaz cartea. 'entru fiecare abonat al bibliotecii trebuie s se cunoasc numele, prenumele, adresa, numrul de telefon, codul numeric personal. (iblioteca i rezerv dreptul de a nu mai mprumuta cri celor care nu au restituit la timp crile mprumutate. 'entru aceasta ar trebui s rein pentru fiecare abonat cartea i data la care a mprumutat4 o. 'entru a avea o eviden a crilor care sunt cele mai solicitate bibliotecarul ar trebui s fac o arhiv a mprumuturilor efectuate n care s rein crui abonat a mprumutat crile i care a fost data mprumutului i data restituirii. e baza scenariului se cere s se realizeze o diagram entitate relaie care s descrie c*t mai bine obiectele prezentate #i relaiile dintre ele' !naliz&nd scenariul deducem urmtoarele constr&ngeri. 4 pot imprumuta cri numai persoanele de5a nregistrate ca abonai 4 nu se pot mprumuta cri care sunt de5a casate 4 fiecare carte este mprumutat la un moment dat unei singure persoane 4 nu se poate mprumuta o carte care nu a fost restituit de persoana care a mprumutat4o anterior !naliz&nd scenariul de mai sus deducem c trebuie s reinem informaii despre cri i despre cititori. 9e putem g&ndi la dou entiti /!87, i !(%9!7 ntre care e sit o relaie ).), deoarece un cititor poate mprumuta mai multe cri, iar o carte poate figura n fia de bibliotec a mai multor abonai. !tributele celor dou entiti trebuie s le deducem din scenariul prezentat. $n prima faz diagrama va arta astfel.
CARTE #cod carte *titlu *autor *editura *an editie *id ra:t *an 5i5lioteca *an ca"are *valoare ABONAT #cod a5onat *nu!e *CNP *tele:on *adre"a *data i!pr *data re"t

" :ie =!pru!utat

" =!pru!ute

21

+bservm c apar unele probleme! 4 dac dorim s adugm o carte n bibliotec trebuie neaprat s o i mprumutm imediat 4 avem grupuri de date care se repet. pentru fiecare abonat reinem repetitiv toate datele personale pentru fiecare carte pe care dorete s o mprumute i pentru fiecare mprumutare al crii rescriem toate datele despre carte. titlu, autor, editura, anul apariiei. 4 trebuie reolvat relaia ).) ntre /!87, i !(%9!7.

Rezolvarea acestor probleme se $ace (n $elul urmtor! 4 divizm entitatea carte n mai multe entiti. /!87, care s rein strict datele despre carte (cod, titlu, autor, editura, anul ediiei), 2%/!7I, care reine indicativul raftului pe care este cartea, !8HI<! /!87, care reine anul n care a intrat cartea n bibliotec, valoarea i anul casrii. 4 divizm entitatea !(%9!7 n mai multe entiti. !(%9!7 care conine numai date referitoare la abonat (nume, prenume, adresa, telefon, /9'), !8HI<! I)'83)37 care conine date referitoare la data mprumutului i restituirii unei cri i codul abonatului care a mprumutat4o n perioada respectiv. $ntre !(%9!7 i /!87, e ist o relaie ).) care trebuie rezolvat, ceea ce presupune introducerea unei noi entiti, de intersecie $)'83)37 care reine ce carte crei persoane a fost mprumutat i data mprumutului. <om avea nevoie i de date referitoare la arhiva de mprumuturi !8HI<! I)'83)37 care reine data mprumutului i restituirii, codul crii i codul abonatului.

LOCAIE #cod carte #id ra:t $ o5"ervaii " conin pentru

IMPRUMUT #cod carte #cod a5onat *data i!pr

pentru

" :ie a#e3at CARTE #cod carte *titlu *autor *editura *an editie " :ie tri!i"

" :ie i!pru!utat " =!pru!ute

ABONAT #cod a5onat *nu!e *CNP *tele:on *adre"a

" :ie =nregi"trat

" conin " conin ARHIVA CARTE #cod carte *an 5i5lioteca *an ca"are *valoare ARHIVA IMPRUMUT #cod carte #cod a5onat *data i!pr *data re"t

22

1.&. 'ormali(area
/rearea unei baze de date presupune identificarea entitilor, atributelor i a tuturor relaiilor ntre entitile care vor fi stocate n baza de date. 7rebuie s determinm modalitatea optim de stocare a datelor (fiecare dat este stocat ntr4un singur loc) i s definim relaiile astfel nc&t s reproducem n diagram c&t mai fidel modelul real pe care l studiem. !nomaliile pe care le nt&lnim la proiectarea bazei de date trebuie nlturate prin procesul de normalizare. 7ormalizarea unei baze de date 4nseamn un proces de transformare sucesi a bazei de date p8n la aducerea ei la o form standard optimizat*4au definit apte forme normale, dar primele trei asigur o calitate destul de bun a organizrii datelor astfel nc&t ma5oritatea bazelor de date sunt organizate p&n la aceast form. )rima form normal 'rima form normal cere ca $iecare instan s aib e%act o valoare pentru $iecare atribut #i s nu e%iste grupuri repetitive de date' *e mai poate spune c atributele trebuie s aib numai valori atomice. *e mai noteaz ?90. ,liminarea grupurilor repetitive se face adug&nd o nou entitate care preia unele dintre atributele entitii iniiale i se relaioneaz de aceasta printr4o relaie de tipul ).?.

Exemple: 1. Dac dorim s stocm date despre cr ile dintr-o bibliotec colar, vom putea considera entitatea! C7&7&OR care are atributele cod carte, titlu, autor, editura, an apari ie, dar trebuie s re inem i informa ii referitoare la cititor, la data mprumutrii i la data restituirii cr ii. %tfel putem avea!
CITITOR #cod carte *titlu *autor *editura *an apariie *cod cititor *data i!pru!ut *data re"tituire

0ar definirea unei astfel de entit i nu ndeplinete cerin a de a fi n prima form normal, deoarece un cititor poate mprumuta de mai multe ori aceeai carte, sau poate mprumuta cr i diferite la o anumit dat. 0e aceea putem considera o nou entitate C%R&" care s con in codul cititorului, data mprumutrii i la data restituirii cr ii.
CARTE #cod carte *titlu *autor *editura *an apariie

" :ie =!pru!utat

" =!pru!ute =!pru!ute

CITITOR #cod cititor *data i!pru!ut *data re"tituire

2. /onsiderm un titlu de carte i reeditrile sale, de e5emplu, volumul *'oezii+ al lui ;ihai "minescu i reeditrile acestui volum. ntr-o prim faz putem s ne g6ndim la entitatea C%R&" care are atributele!

23

CARTE #ISBN *titlu *autor *editura *an apariie $ pre:aa $ pre

%ceast entitate nu este n prima form normal deoarece nu respect condi ia ca atributele s aib valori unice i con ine grupuri repetitive. %nul apari iei poate fi cu valori multiple, lu6nd n considerare e5emplul dat, pentru o singur editur. 0e aceea corect este s definim entitat ile C%R&" i R""07&%R" care se afl n rela ie @!;
CARTE #id *titlu *autor " ai5 REEDITARE #ISBN *editura *an apariie $ pre:aa $ pre

" :ie a

3. 0orim s re inem informa ii despre mai multe facult i. n cadrul fiecreia e5ist una sau mai multe sec ii. #a fiecare sec ie sunt alte discipline de concurs, iar la unele sec ii trebuie sus inute i probe orale. O entitate care s ndeplineasc cerin ele acestei probleme este!
FACULTATE #id *denu!ire *"ecie *data ad!iterii *di"ciplina de concur" $ pro5a oral $ o5"ervaii

0ar nu ne-am asigurat ca rela ia s fie n @/( deoarece con ine grupuri repetitive. "ste indicat s definim dou entit i (%C8#&%&" i )"CE7" care s fie n rele ia @!;.
FACULTATE #id_:acultate *denu!ire " ai5 SECIE #id_"ecie *data ad!iterii * pro5a oral $ o5"ervaii

" aparin

' doua form normal ! doua form normal cere ca orice atribut care nu este identi$icator unic trebuie s $ie dependent de (ntregul identi$icator unic (,-D). !ceast problem se pune doar n cazul n care unicul identificator este format din mai multe atribute sau este o combinaie dintre un atribut i o relaie (relaie barat). ,chivalent, putem spune c a doua form normal este ndeplinit numai dac nu e ist dependene pariale ntre atributele sale i 3ID. /onsider&nd dou mulimi ! i (, dac la orice set de valori din mulimea ! i corespunde un anumit set de valori din mulimea ( spunem . este dependent ($uncional) de /. 'utem defini astfel depedena ntre dou atribute.
24

,chivalent, putem spune c a doua form normal este ndeplinit numai dac nu e ist dependene pariale ntre atributele sale i 3ID. *e mai noteaz I90.

Exemple: 1. Dac vom considera entit ile 07R7<7/&" 1cu atributele cod, nume, prenume2 i "#"$ 1C/', numr matricol, nume, clasa, media2. %tributul *specializare diriginte+ nu este dependent de identificatorul unic al entit ii "#"$ 1LC/'2, deci nu este in F/(.
DIRIGINTE #cod *nu!e " con"ilie3e ELEV # CNP * nr !atricol * nu!e * cla"a $ !edia * "peciali3are diriginte

" :ie con"iliat

Pentru a rezolva problema trecem atributul specializare diriginte la entitatea DIRIGINTE.


DIRIGINTE #cod *nu!e *"peciali3are diriginte " con"ilie3e ELEV # CNP * nr !atricol * nu!e * cla"a $ !edia

" :ie con"iliat

5- /onsiderm iniial entitile HOTEL i CAMERA. Atributul pre pensiune nu este dependent de entitatea CAMERA, deci nu este n 2NF.
HOTEL #id 6otel *denu!ire *adre"a *cla"i:icare $ activiti " conin CAMERA #id ca!era *eta? *nr paturi *pre ca!era *pre pen"iune $ vedere

" aparin

Atributul ar trebui reinut la entitatea HOTEL.


HOTEL #id 6otel *denu!ire *adre"a *cla"i:icare $ activiti *pre pen"iune " conin CAMERA #id ca!era *eta? *nr paturi *pre ca!era $ vedere

" aparin

' treia form normal ! treia form normal cere ca nici un atribut care nu este identi$icator unic nu poate s $ie dependent de un atribut care nu este identi$icator unic, cu alte cuvinte toate atributele depind direct numai de unicul identi$icator (,-D). *e mai noteaz J90. ,chivalent, putem spune c a treia form normal este ndeplinit numai dac nu e it dependene tranzitive. % dependen tranzitiv apare c&nd un atribut al entitii depinde de un atribut care nu este identificator unic.
20

'entru a fi respectat a treia form normal trebuie fcut o mprire a entitii n dou entiti, fiecare prelu&nd atributele specifice astfel nc&t toate atributele s depind numai de unicul identificator.

Exemple: 1. /onsiderm o entitate C%R&" n care s re inem date referitoare la cr i i autorii lor! titlu, editura, an apari ie, codul 7)./, nume autor, data naterii. %ceast entitate nu respect a treia form normal, deoarece atributele *auto+ i *data naterii+ nu depind de unicul identificator *7)./+.
CARTE #ISBN *titlu *editura *an apariie *nu!e autor *data na#terii

'entru a fi n G/( entitatea trebuie divizat n dou entit i, una care con ine date referitoare la cr i i una care con ine date referitoare la autori. ntre cele dou entit i este o rela ie ;!@.
CARTE #ISBN *titlu *editura *an apariie " :ie "cri" AUTOR #id_autor *nu!e autor *data na#terii

" "crie

5- )ai mul i studen i trebuie s prezinte lucrarea de diserta ie, deci ar trebui s considerm entitatea 07)"R&%E7". Observm c atributul *nume profesor+ nu depinde de atributul *id student+ care este identificator unic.
DISERTAIE #id "tudent *nu!e "tudent *titlu *nu!e pro:e"or

0eci nu este respectat a treia form normal. 'entru a fi in G/( trebuie s considerm o entitate separat, 'RO(")OR care s fie n rela ia @!; cu entitatea 07)"R&%E7".
DISERTAIE #id "tudent *nu!e "tudent *titlu " :ie coordonat PROFESOR #id pro:e"or *nu!e pro:e"or

" coordone3e

2n concluzie3 pe scurt3 putem rezuma cele trei forme normale: Fiecare atribut trebuie s aib numai alori atomice 17+ s depind de 4ntregul 9:D 57+ ;i s depind numai de 9:D <7+

24

'plicaie 6 normalizarea: 'cti iti extra;colare )e cere s se alctuiasc diagrama entitate-relaie care s modeleze cerinele urmtoare av*nd grij s $ie respectate cele trei $orme normale' Inspectoratul colar dorete s aib o eviden a elevilor care particip la diverse activiti e tracolare. fac sport, sunt nscrii la cercuri colare, fac parte din trupe de teatru etc. 2a o astfel de activitate particip unul sau mai muli elevi. 2a unele activitai particip elevi dintr4o singur coal, la altele particip elevi din mai multe coli. 3n elev poate s participe la una sau mai multe activiti. 'entru fiecare elev trebuie s se cunoasc numele, adresa, numrul de telefon, coala, clasa, activitatea la care este nscris. De la aceste activiti se aleg grupe de elevi care particip la diverse proiecte sau concursuri ce se deruleaz n anumite perioade de timp, precizate. 2a un astfel de proiect particip numai elevii de la o anumit activitate i se pregtesc pentru proiectul respectiv. de e emplu trupa de teatru dorete s participe cu o anumit pies la un festivalG pentru aceasta face repetiii ntr4o perioad de timp precizat. De asemenea, o anumit activitate poate s aib mai multe proiecte, de e emplu echipa de ah se pregtete pentru dou concursuri care se desfoar la date diferite. $n prima faz construim entitatea ,2,< care va avea atributele.
ELEV #cod elev *nu!e *adre"a *tele:on *nu!e #coala *cod #coala *cla"a *data na#terii *denu!ire activitate *cod activitate *denu!ire proiect *cod proiect *data proiect

7rebuie s verificm dac respect prima form normal (?90), adic dac entitatea nu conine grupuri repetitive i are numai valori atomice. 'rima form normal nu este respectat (dac un elev particip la mai multe activiti el apare integistrat de mai multe ori ca instan a entitii ,2,<). 8ezult c trebuie s divizm entitatea elev n dou entiti. ,2,< care s rein datele despre un elev i !/7I<I7!7, care reine datele despre activiti i proiecte. !ceste dou entiti se afl n relaia ).) (un elev poate fi nscris la mai multe activiti i o activitate trebuie fcut de unul sau mai muli elevi).

ELEV #cod elev *nu!e *adre"a *tele:on *nu!e #coala *cod #coala *cla"a *data na#terii

" participe

" :ie e:ectuat

ACTIVITATE #cod activitate *denu!ire activitate *denu!ire proiect *cod proiect *data proiect

,ntitatea !/7I<I7!7, conine nc grupuri repetitive, nu este n ?90. 7rebuie s dividem aceast entitate n dou entiti. !/7I<I7!7, i '8%I,/7 aflate n relaia ?.) (la o activitate i corespund unul sau mai multe proiecte).

27

ELEV #cod elev *nu!e *adre"a *tele:on *nu!e #coala *cod #coala *cla"a *data na#terii

" participe

ACTIVITATE #cod activitate *denu!ire activitate " :ie e:ectuat " ai5 " aparin PROIECT #cod proiect *denu!ire proiect *data proiect

'roblema nu este nc rezolvat. $ntre entitile ,2,< i !/7I<I7!7, e ist o relaie de tipul ).) care trebuie nlturat prin introducrea unei noi entiti, o entitate de intersecie I9*/8I,8, care preia din atributele de la entitile ,2,< i !/7I<I7!7,. 7rebuie s verificm apoi dac este respectat a doua form normal (I90), adic trebuie scoase din entitate toate atributele care nu depind de ntregul 3ID, se opereaz asupra datelor care au unicul identificator format din mai multe atribute. $n cazul de fa aceast problem s4a rezolvat prin introducerea entitii I9*/8I,8,.
INSCRIERE #cod elev #cod activitate

pentru ELEV #cod elev *nu!e *adre"a *tele:on *nu!e #coala *cod #coala *cla"a *data na#terii

pentru ACTIVITATE #cod activitate *denu!ire activitate

" participe

" :ie e:ectuat " ai5

" aparin PROIECT #cod proiect *denu!ire proiect *data proiect

* verificm acum, dac respect a treia form normal (J90), adic dac toate atributele unei entiti depind direct de unicul identificator. 7rebuie scoase atributele care nu depind direct de 3ID i
28

trebuie creat o nou entitate. !tributul coala al entitii ,2,< nu depinde de codul elevului, deci se va constitui entitatea */%!2! care se afl n relaia de ?.) cu atributul ,2,<. Diagrama final, care modeleaz scenariul descris i respect cele trei forme normale este.

2<

INSCRIERE #cod elev #cod activitate

pentru ELEV #cod elev *nu!e *adre"a *tele:on *cla"a *data na#terii " =nvee

pentru ACTIVITATE #cod activitate *denu!ire activitate

" participe

" :ie e:ectuat " ai5

" aparin PROIECT #cod proiect *denu!ire proiect *data proiect

" ai5 COALA #cod #coala *nu!e #coala

1.). Ar!e
/&nd vrem s reprezentm ntr4o diagram obiecte sau fenomene care includ submulimi de elemente care au fiecare anumite proprieti, de obicei se folosesc supertipuri #i subtipuri, dar nu cunoatem e act relaiile ntre cele dou entiti. 0iecare subtip are atributele sale specifice. 'entru a specifica cu precizie relaiile de interdependen dintre subtipuri ale unei entiti i alt entitate se folosesc arce. !rcul semnific faptul c e%clusiv, numai una dintre subentiti este0poate $i legat de o alt entitate , dup cum relaia este mandatorie sau opional. !rcele sunt foloste pentru a modela c&t mai fidel fenomene reale, cu proprieti diferite, care altfel nu ar putea fi =descrise# prin diagrame. !rcele modeleaz un fel de constr&ngere relev&nd faptul c numai o subentitate este la un moment dat luat n considerare n relaie. Con enii 'entru construirea diagramei ,8D. arcele se desenez printr4un arc de cerc care cuprinde subentitile (subtipurile). 2a intersecia relaiilor cu arcul se deseneaz c&te un cercule.

Exemplu: ntre dou orae trebuie efectuat o cltorie cu un singur mi3loc de transport din cele disponibile. #um n considerare toate modalit ile de a face cltoria i presupunem c nu se schimb mi3locul de transport pentru a strbate distan a dintre cele dou orae. 0eci distan a dintre cele dou orae poate fi strbtut cu trenul, cu avionul, cu vaporul sau cu automobilul. )e cere s se relizeze o diagram care s modeleze cele dou entit i C9#9&OR7" i $">7C8#, in6nd cont de deosebirile dintre mi3loacele de transport posibile. "vident pentru fiecare dintre aceste moduri de transport pre ul i timpul de deplasare poate fi diferit, dar ambele sunt atribute comune celor dou entit i. 'utem s desenm rela ia ntre dou entit i folosind subtipuri i supertipuri, astfel!
39

CLTORIE #id *data *plecare *de"tinaie

" :ie e:ectuat

VEHICUL #id *pre *ti!p AVION *re3ervare *5aga?e

e:ectue3e

VAPOR *nr locuri *condiii !eteo

AUTOMOBIL *con"u! *"taionare

TREN *cla"a

0ar nu specificm clar c o cltorie se face e5clusiv cu un singur mi3loc de transport, av6nd n vedere c subtipurile au i atribute comune. 0ac folosim un arc putem s refacem diagrama n felul urmtor i ,citim+ c o cltorie se face e5clusiv cu unul din vehiculele prezentate.
CLTORIE #id *data *plecare *de"tinaie " :ie e:ectuat AVION #id *pre *ti!p *re3ervare *5aga?e

e:ectue3e " :ie e:ectuat

e:ectue3e

VAPOR #id *pre *ti!p *nr locuri *condiii !eteo

" :ie e:ectuat

e:ectue3e

AUTOMOBIL #id *pre *ti!p *con"u! *"taionare

" :ie e:ectuat

e:ectue3e

TREN #id *pre *ti!p *cla"a

Exemplu: 0orim s desenm cu creionul ntr-un caiet mai multe figuri geometrice! ptrate, cercuri, dreptunghiuri, triunghiuri. (iecare dintre aceste figuri are anumite propriet i! cercul are raza i centru, ptratul are latura, triunghiul are lungimile celor trei laturi, dreptunghiul are lungimea i l imea
31

laturilor. n acest caz arcul arat n felul urmtor!


DESEN #id *pagina $ e@plicaii " conin aparine CERC #id *centru *ra3a

" conin aparine

PTRAT #id *latura

" conin aparine

TRIUNGHI #id *latura1 *latura2 *latura3

" conin aparine DREPTUNGHI #id *lungi!e *li!e

Modelarea timpului , is situaii c&nd anumite proprieti ale obiectelor care trebuie modelate prin intermediul ,8D se schimb n timp. !pare problema modelrii acestor schimbri.

Exemple: 1. 'entru entitatea "#"$ v6rsta unui elev sau anul de studiu pot fi atribute volatile. n cele dou cazuri modificarea este previzibil, ntotdeauna crete- v6rsta nu scade i nu rm6ne constant. /u avem nevoie de o entitate separat care s re in v6rsta persoanei. 7ndicat este re inerea n loc de atributul ,v6rst+ a atributului ,data naterii+.
E%E& : /9' ; numele ; clasa o media ; data naterii

2. Cu totul altfel stau lucrurile n cazul n care dorim s modelm facturarea clien ilor unei re ele de transmisie &$ prin cablu i avem entitatea (%C&8R%. $aloarea care trebuie pltit este de obicei calculat n euro i se face transformarea n lei la cursul de schimb leuMeuro de la data emiterii facturii. Cursul de schimb nu este previzibil, se poate schimba zilnic- poate avea perioade n care crete sau scade sau perioade n care cursul de schimb este constant. 7n acest caz trebuie s se defineasc entitatea C8R) care re ine data calendaristic i raportul leuMeuro de la acea dat. ntre entit ile C8R) i (%C&8R% trebuie s e5iste o rela ie @!; 1de obicei sunt emise mai multe facturi n aceeai zi2.

32

+'C(9#' : numr ; numele ; adresa ; valoarea

" :ie e!i"

" apar =n

C9#, : zi : luna : an ; raport leu>euro

3. 8n alt e5emplu este al serviciilor oferite de o firm i vom avea entit ile (7R;% i )"R$7C78. 0ac sunt multe firme cu servicii similare pe pia , trebuie s scad pre ul sau s aib promo ii pe o perioad limitat de timp. )au dimpotriv, dac nu are concuren firma poate s creasc pre urile. n acest caz trebuie s definim o entitate 'R"E care s con in ca atribute pre ul, data de nceput a promo iei i data de sf6rit. ntre )"R$7C78 i 'R"E e5ist o rela ie @!;. 8nicul identificator al pre ului este format din atributul zi nceput i din rela ie deci n "R0 este o rela ie barat.
+:#M' : id ; nume ; adresa ; telefon
" o:ere

" :ie o:erit

,E#&:C:9 : id ; denumire % descriere


" ai5 pentru

)#E= : zi inceput ; zi sf&rit ; valoare

)odelarea timpului are aplicaii practice n sensul c studierea variaiei preului unui produs n timp ofer informaii statistice referitoare la acel produsG sau se poate determina valoarea pe care o are acel produs la o anumit dat (din cele nregistrate) etc. )rograme de alidare3 de aciune $n baza de date pot fi incluse programe, sau funcii care se ruleaz n mod automat n cazul producerii unei operaii de adugare, modificare sau tergere asupra datelor unei tabele sau asupra tabelei. !ceste proceduri stocate n baza de date, care se ncarc automat la deschiderea bazei de date i se utilizeaz pentru pstrarea integritii refereniale a bazei de date. *peraii specifice prelucrrii bazelor de date "interogri3 rapoarte$ 3nul dintre scopurile principale ale organizrii datelor n baze de date l reprezint interogarea bazei de date. , tragerea datelor dintr4o baz de date n funcie de anumite criterii, far a le terge, poart numele de interogare sau cerere*-(D4urile dispun de o serie de instrumente, proceduri, funcii care permit utilizatorului specificarea criteriilor de interogare. 'rintre acestea se numr limba5ul standard de interogare *12. Interogrile se folosesc i pentru crearea rapoartelor. #apoartele permit e tragerea datelor din baza de date i prezentarea lor ntr4un anumit format.
33

1.*.Autoe+aluare
(E,(9% 1 1- Care dintre urmtoarele afirmaii este fals> a. este important s nelegem cum sunt reinute datele n baza de date i cum putem avea acces la ele. b. nt&lnim baze de date n viaa de zi cu zi. c. informaiile din baza de date pot fi prelucrate doar la sf&ritul unui interval de timp (de e emplu la sf&ritul lunii). d. bazele de date sunt utile c&nd avem nevoie s prelucrm statistic mari cantiti de date. 5- 2n urma prelucrrilor datele de in informaii- Care din urmtoarele ?cazuri1 nu sunt informaii obinute din date> a. media unui absolvent de gimnaziu i baza de date cu mediile absolvenilor n vederea admiterii la liceu. b. media de admitere la liceu si media absolvirii liceului pentru un elev. c. nlimea unui elev i media nlimilor elevilor de v&rsta lui. d. un produs dintr4un magazin i sumele ncasate dinv&nzrile produsului respectiv timp de o lun. <Este important ca modelul realizat de programator s respecte cerinele clientului> a. nu, programatorul poate rezolva n mod propriu problema, deoarece el tie cel mai bine. b. da, numai dac clientul este de specialitate. c. nu, deoarece modelarea folosind baze de date nu contribuie la dezvoltarea afacerii. d. da, este important ca toate cerinele clientului s fie cuprinse n modelul realizat.

@- 9nicul identificator este necesar pentru: a. a distinge o persoan de oricare alt persoan b. a clasifica crile din biblioteca colii c. a clasifica facturile unei firme. d. a face distincie ntre entitile profesor i elev ACare dintre urmtoarele afirmaii este fals> a. 8elaiile se citesc de la st&nga la dreapta i de la dreapta la st&nga. b. 8elaiile pot fi opionale sau obligatorii. c. 8elaiile pot fi simple sau multiple. d. 8elaiile au la ambele capete un nume, reprezentat printr4un verb. Care dintre urmtoarele atribute este cel mai indicat s fie ales ca identificator unic> a. data naterii i localitatea de origine b. codul numeric personal c. numele i prenumele complet i numele prinilor d. numrul de telefon

B-

C- Cum se figureaz 4n diagrama entitate!relaie o relaie netransferabill> a. printr4un cerc b. printr4un dreptunghi c. printr4un romb d. printr4un ptrat D- Consider8nd entitile )E#,*'7' ;i 'D#E,'3 c8nd ne referim la domiciliul unei persoane3 ce tip de relaie se poate stabili 4ntre ele> a. unu la unu b. unu la mai muli c. mai muli la unu d. mai muli la mai muli
34

E-

Care dintre urmtoarele tipuri de relaii este opional la ambele capete> a. b. c. d.

1F- Entitatea de intersecie: a. este folosit la =rezolvarea# relaiei de tipul ).) b. este folosit la crearea unei relaii recursive c. apare n cadrul celei de4a treia forme normale d. este folosit c&nd nu cunoatem numele relaiei (E,(9% 5 1'firmaia 0:n cadrul unei entiti nu exist dependene tranziti e-1 este specific a. primei forme normale b. celei de4a doua forme normale c. celei de4a treia forme normale d. relaiei mai muli la mai muli 5Conceptele de baz utilizate 4n organizarea unei diagrame entitate!relaie sunt urmtoarele3 mai puin: a. entitatea b. atributul c. relaia d. recursivitatea +iind desenat urmtoarea relaie 4ntre entitile %*C'%:('(E ;i ,(#'D'3 care din urmtoarele ariante este 1citirea1 corect a relaiilor>
LOCALITATE #cod *?ude " ai5 " aparin STRADA #indice *nr de ca"e

<-

a. 0iecare localitate poate s aib una sau mai multe strzi.>0iecare strad trebuie s aparin unei localiti. b. 0iecare localitate trebuie s aib una sau mai multe strzi.>0iecare strad poate s aparin unei localiti. c. 0iecare localitate poate s aib o strad.>0iecare strad poate s aparin unei localiti. d. 0iecare localitate poate s aib o strad.>0iecare strad trebuie s aparin uneia sau mai multor localiti. @Care dintre urmtoarele afirmaii este fals> a. $ntr4o diagram nu pot e ista dou entiti cu acelai nume, sau o aceeai entitate cu nume diferite. b. *-(D este un pachet de programe, care permite utilizatorului definirea, crearea i ntreinerea bazei de date. c. % entitate n forma normal ? nu conine atribute compuse. d. % entitate n forma normal J conine dependene tranzitive. )rin tipul unei date 4nelegem: a. mulimea valorilor pe care le poate lua data b. structura i operaiile admise asupra datei c. tipul operaiilor admise asupra datei
30

A-

d. regulile de protecie i securitatea datelor Ba. b. c. d. Care din urmtoarele entiti conine atribute nepotri ite> /2@DI8,. adresa, eta5, numr camera /!87,. titlu, autor, data apariiei, editura ,2,<. nume, data naterii, loc de munc !9-!C!7. nume, specializare, loc de munc

C- (ipul unui atribut nu poate fi: a. ir de caractere b. numr ntreg c. numar real d. o zecimal D- 9n identificator unic compus este format: a. dintr4o combinaie de dou sau mai multe atribute b. dintr4o combinaie de e act dou atribute c. dintr4o combinaie de dou sau mai multe entiti d. dintr4o combinaie e act dou instane E#elaia din figura de mai Gos este:

a. b. c. d.

opional la st&nga i obligatorie la dreapta obligatorie la st&nga i opional la dreapta obligatorie la st&nga i obligatorie la dreapta opional la st&nga i opional la dreapta

1F-* relaie este redundant a. c&nd poate fi dedus din alte relaii de5a definite b. c&nd se realizeaz de la o entitate la ea nsi c. c&nd trebuie s gsim un sinonim pentru o relaie de5a definit d. c&nd se introduce o nou relaie pentru rezolvarea relaiei de tipul mai4muli4la4mai4muli

(E,(9% < 1Care dintre afirmaiile de mai Gos nu este ade rat> a. Datele sunt fapte semnificative culese din lumea real pe baz de observaii i msuratori. b. Datele pot fi numere, caractere, imagini, sunete etc. stocate, accesate i transmise folosind calculatorul. c. Datele nu pot fi prelucrate, selectate, combinate, sintetizate. d. % colecie de date reprezint un ansamblu de date organizat dup anumite criterii. 57umele unei entiti este: a. un substantiv luat la singular b. un verb sau o e presie verbal c. un ad5ectiv d. un substantiv luat la plural Care nu este instan a entitii '7H'I'("cod3 nume3 funcia3 salar$> a. 'aul -eorgescu b. numele C8nd stabilim numele unei entiti trebuie s a em 4n edere: a. s nu folosim pentru nume cuvinte rezervate
34

<-

@-

b. s folosim sinonime ale substantivului care desemneaz entitatea c. numele entitii s fie obligatoriu un substantiv luat la singular d. numele entitii s fie obligatoriu un substantiv scris cu litere mici ACare dintre instanele de mai Gos nu este specific entitii> a. ,2,<. 6colar b. /!87,. 'oezii c. ,/HI'!. 'oli 7imioara d. !9-!C!7. 'aul Ionescu 'tributul mandatoriu 4nseamn c are: a. obligatoriu o valoare pentru fiecare instan a entitii b. nu are obligatoriu o valoare pentru fiecare instan a entitii c. este un atribut care conine mai multe valori d. este un atribut care are o valoare limitat 9n atribut este olatil dac: a. are e act o valoare b. are o valoare care se schimb constant c. are valori limitate luate dintr4un domeniu d. are mai multe valori la un moment dat %a realizarea diagramei entitate!relaie simbolul 1/1 desemneaz: a. un atribut mandatoriu b. un atribut opional c. o relaie netransferabil d. unicul identificator al instanei unei entiti 9nicul identificator al instanei unei entiti este: a. format din unul sau mai multe atribute b. o instan a unui atribut c. este obligatoriu un numr d. este un atribut care are iniial valoarea K a. b. c. d. 9n identificator unic artificial este un atribut : care este format obligatoriu din mai multe atribute care nu are o valoare constant creat c&nd nu e ist niciun atribut care s identifice unic instanele unei entiti marcat ntotdeauna cu simbolul =%#

B-

C-

D-

E-

1F-

(E,(9% @ 1a. b. c. d.

:nstanele unui subtip: sunt instane ale supertipului cruia i aparine nu sunt instane ale supertipului cruia i aparine sunt de sine stttoare, nu au nicio legtur cu subtipul un subtip nu are instane proprii

5- Cardinalitatea unei relaii reprezint: a. numrul de atribute ale relaiei b. numrul de subtipuri ale entitii c. numrul de instane ale unei entiti care particip la relaie d. numrul de entiti care particip la relaie <* relaie 4ntre dou entiti se cite;te: a. numai de la st&nga la dreapta b. numai de la dreapta la st&nga c. de la st&nga la dreapta i de la dreapta la st&nga
37

d. o relaie ntre dou entiti nu se citete, doar se deseneaz @a. b. c. d. Aa. b. c. d. Ba. b. c. d. C:ntr!o diagram entitate!relaie care din afirmaiile urmtoare nu sunt ade rate> dreptunghiul cu coluri rotun5ite reprezint o entitate o linie punctat semnific o relaie opional rombul reprezint o relaie netransferabil liniile punctate leag atributele a dou entitii #ezol area relaiilor de tipul M:M "mai!muli!la!mai!muli$ 4ntre dou entiti se face prin introducerea unei entiti de intersecie cu care cele dou entiti se afl n relaie ?.? prin introducerea unei entiti de intersecie cu care cele dou entiti se afl n relaie ?.) prin modificarea unor atribute ale uneia dintre relaii prin schimbarea numelui unei relaii * relaie este recursi dac se realizeaz de la o entitate la ea nsi de la entitatea ? la entitatea I i reciproc de la un supertip al entitii la un subtip al su de la entitatea I la entitatea ? prin entitatea J

+iind definit urmatoarea relaie 4ntre entitile M97C:(*# ;i ECJ:)'3 cum se cite;te o astfel de relaie>
MUNCITOR " lucre3e " :ie :or!at din ECHIPA

a. 0iecare muncitor trebuie s lucreze ntr4o singur echip.> 0iecare echip poate s fie format din unul sau mai muli muncitori. b. 0iecare muncitor poate s lucreze ntr4o singur echip.> 0iecare echip poate s fie format din unul sau mai muli muncitori. c. 0iecare muncitor poate s lucreze n una sau mai multe echipe.> 0iecare echip trebuie s fie format din unul sau mai muli muncitori. d. 0iecare muncitor poate s lucreze ntr4o singur echip.> 0iecare echip trebuie s fie format din unul sau mai muli muncitori. D0'tributele trebuie s conin numai alori atomice1 este o afirmaie specific a. formei normale I b. formei normale ? c. nontransferabilitii unei relaii d. definirii unui subtip al unei entiti Consider8nd entitile #*% ;i 'C(*# care modeleaz date referitoare la o trup de teatru ;colar care Goac mai multe piese3 ce tip de relaie este cea mai potri it 4ntre ele> a. unu la unu b. unu la mai muli c. mai muli la unu d. mai muli la mai muli Consider8nd entitile K*ME# ;i %*C DE M97CL3 care modeleaz un mod de repartizare a ;omerilor pe posturi3 ce tip de relaie este cea mai potri it 4ntre ele> a. unu la unu b. unu la mai muli c. mai muli la unu d. mai muli la mai muli

E-

1F-

38

(E,(9% A 1- 2ntre care din urmtoarele relaii exist o relaie de tipul 1:1 > a. 0iecare cltor trebuie s ocupe un singur loc.> 0iecare loc poate fi ocupat de un singur cltor. b. 0iecare cltor trebuie s ocupe unul sau mai multe locuri.> 0iecare loc poate fi ocupat de un singur cltor. c. 0iecare cltor trebuie s ocupe un singur loc.> 0iecare loc trebuie fi ocupat de unul sau mai muli cltori. d. 0iecare cltor poate s ocupe unul sau mai multe locuri.> 0iecare loc poate fi ocupat de unul sau mai muli cltori. 5- Care dintre afirmaiile urmtoare este ade rat> a. 3n atribut nu poate avea valori simple. b. ,ntitate are numai atribute simple. c. 3n atribut al unei entiti nu poate avea pentru o instan, valori multiple. Dac are trebuie creat o entitate nou care este n relaie ).? cu prima. d. 3n atribut nu poate avea valori recursive. Dac are trebuie creat o entitate de intersecie. <- Considerm relaionate entitile +:#M' ;i '7H'I'(- Definim sub!entitile acesteia lu8nd 4n considerare tipul contractului de munc ;i om a ea angaGai cu norm 4ntreag3 angaGai cu Gumtate de norm ;i angaGai la plata cu ora- Ktiind c un angaGat poate s lucreze la una sau mai multe firme3 dar nu poate fi angaGat cu dou tipuri de contracte la o singur firm3 se poate reprezenta o astfel de relaie folosind: a. un arc b. atribute cu valori multiple c. nu se poate reprezenta deoarece este o relaie de tipul ).) d. necesit formularea unei constr&ngeri @- 'firmaia 0Iuriul acord un punctaG fiecrui concurent-1 este: a. o regul structural b. o regul procedural c. o constr&ngere d. nu poate fi modelat folosind o diagram, necesit o documentare suplimentar A- Modelarea ;i urmrirea ariaiei alorii dintr!un cont bancar alid "a crui cod :B'73 aloare la o anumit dat ;i titular se rein 4ntr!o entitate numit C*7($ pe timp de un an se face folosind: a. un atribut denumit =valoare# care se modific b. o entitate %',8!FI, care reine valoarea din cont i intervalul de timp n care s4a nregistrat acea valoare i se afl n relaie cu entitatea /%97 c. o constr&ngere care impune procentul de inde are a valorii din cont d. creara c&te unui subtip pentru fiecare operaiune care conduce la modificarea valorii din cont B- %a un centru comercial sunt mai multe magazine care 8nd di erse produse alimentare ;i nealimentare- De asemenea se afl ;i magazine cu alt specific "restaurant3 cofetrie3 etc$Modelarea acestora se poate face folosind: a. o structur ierarhic de entiti b. o entitate )!-!EI9 care are mai multe subtipuri c. nu poate fi modelat o astfel de entitate, are prea multe subtipuri d. se formuleaz o constr&ngere pentru a fi ma im dou nivele de indentare C- ,e spune c o relaie se afl 4n a doua form normal3 dac: a. se afl n prima form normal i orice atribut care nu este 3ID secundar este total dependent de 3ID b. se afl n prima form normal i orice atribut care nu este 3ID este dependent de ntregul 3ID.
3<

c.

se afl n a treia form normal i fiecare atribut care nu este 3ID este parial dependent de 3ID d. orice atribut care nu este 3ID este total dependent de 3ID. D- ,e consider entitatea EM'ME7 cu atributele idNmaterie3 denumireNmaterie3 dataNexamen3 sala3 nota- 'ceast relaie se afl 4n a treia form normal> a. da b. nu E- +ie ' ;i B dou atribute ale unei entiti- ,e spune c atributul B este dependent funcional de '3 dac> a. fiecrei valori a lui ! i este asociat e act o valoare a lui ( b. fiecare valoare a lui ! este asociat e act unei valori nenule a lui ( c. fiecare valoare a lui ( este asociat e act unei valori a lui ! d. fiecrei valori a lui ! i este asociat cel puin o valoare nul a lui ( 1F- Care dintre afirmaiile urmtoare nu este ade rat> a. % relaie recursiv este o relaie definit de la o entitate la ea nsi. b. 'entru construirea diagramei ,8D relaia recursiv se deseneaz ca un arc de cerc de la dreptunghiul ce desemneaz entitatea la el nsui. c. % relaie recursiv este ntotdeauna o relaie netransferabil. d. % relaie ierarhic este obligatoriu de tipul ).).

1.1,.-robleme propuse
1Dai un e emplu de model fizic i de model conceptual. 5- Dai e emple de entiti. Definii pentru fiecare atributele i tipul lor (opional sau mandatoriu). *tabilii unicul identificator. Dai e emple de entiti care au. identificator unic simplu identificator unic compus identificator unic artificial identificator unic secundar <- *e consider dou entiti /38*! cu atributele cod, destinaia, data, avion, nr. locuri i 8,E,8<!8, cu atributele cod cursa, nume client, nr. locuri rezervate care se refer la rezervrile fcute la curse aeriene. Desenai entitile i relaiile dintre ele. =/itii# aceste relaii. @Dai e emple de entiti ntre care e ist relaii de tipul. ?.? ?.) ).) Desenai diagramele corespunztoare i citii aceste relaii. 8ezolvai relaia ).) prin introducerea unei entiti de intersecie. ADai e emplu de o entitate care are subtipuri. Desenai aceast entitate conform conform conveniilor. B- Dai e emplu n care unicul identiifcator este format dintr4un atribut i o relaie. Desenai i =citii# aceast relaie conform conveniilor de realizare a ,8D. C- Dai e emple de reguli procedurale i reguli structurale. Desenai i =citii# aceast relaie conform conveniilor de realizare a ,8D. D- Dai e emplu de relaie recursiv. Desenai i =citii# aceast relaie conform conveniilor de realizare a ,8D. E- Dai e emplu de relaie ierarhic. Desenai i =citii# aceast relaie conform conveniilor de realizare a ,8D. 1F- Dai e emplu de relaie care necesit modelarea timpului folosind o entitate care s rein valorile modificate.
49

11- Dai e emplu de relaie modelat folosind arce. Desenai i =citii# aceast relaie conform conveniilor de realizare a ,8D. 15- 'roprietarul unui magazin trebuie s se aprovizioneze cu marf de la un depozit. 7rebuie s achite acelui depozit contravaloarea mrfii cumprate prin plata unor facturi. 2a fiecare nou aprovizionare cu marf se emite c&te o factur cu data curent. /are este relaia dintre client i facturi L Desenai i citii diagrama. 1<- *e consider entitatea ,M!),9 care conine date referitoare la e amene. 'entru aceasta, se definesc atributele idAstudent, nume student, an, curs, nume profesor. ,ste aceast entitate n I90L 1@- Dac dorim s stocm informaii despre firme, de obicei reinem ca adres strada, numrul, codul potal i eventual, numrul de telefon sau adresa de e4mail. Dar se poate nt&mpla ca sediul firmei s se afle ntr4un imobil cu mai multe eta5e, care poate fi sediul mai multor firme. 'utem defini entitatea *,DI3 care are atributele.nume firm, cod firm, strada, numrul, codul potal, numrul de telefon, adresa de e4 mail. 'utem astfel identifica unic o anumit adres a unei firmeL ,ste aceasta n ?90L 1A- #ealizai o diagram entitate!relaie care s modeleze c8t mai fidel scenariul de mai Gos: 2a secretariatul unui liceu trebuie s se fac o situaie statistic care s cuprind toi elevii navetiti (care nu au domiciliul n localitatea n care se afl liceul) elevi care au un abonament, dar i cu elevii din ora care vin la coal cu mi5loace de transport n comun. 3n elev localnic pentru a a5unge la scoal poate s i fac un abonament la un mi5loc de transport n comun. 3n elev care nu este din localitate i face pe l&ng abonamentul de transport n ora i un abonament la tren sau la autobuz cu care s a5ung n ora. !bonamentul l face pe baza carnetului de elev, specific&nd localitatea de plecare i cea de sosire. $n ora abonamentul se face "pe o linie", adic pe traseul unui anumit mi5loc de transport. 1B- 3n elev are mai multe volume de literatur pe care dorete s le aeze n biblioteca proprie astfel nc&t s le regseasc c&t mai repede posibil. De aceea s4a hotar&t c ar fi mai potrivit s le aeze pe domenii. pe un raft volumele de poezie, pe altul cele de proz, pe altul cele de publicistic, pe urmtorul cele de dramaturgie i pe al cincelea pe cele de critic literar. 'entru fiecare carte se cunoate titlu, autorul>autorii, anul apariiei, domeniul la care se ncadreaz, dar fiecare dintre aceste grupe de cri au caracteristici specifice. /um ar trebui elevul s g&ndeasc un mod de organizare a crilor din biblioteca sa i care este o posibil diagram, desenat astfel nc&t s respecte c&t mai fidel cerineleL 1C- Desenai diagrama entitate!relaie "preciz8nd ;i tipul relaiilor$ pentru urmtoarul scenariu . presupunei c avei o colecie muzical rocN, format din /D4uri, D<D4uri i casete audio i dorii s construii o baz de date care s permit s gsii nregistrrile pe care le avei pentru un anumit interpret, pentru un anumit chitarist, pentru o anumit formaie. 'entru a realiza baza de date mai nt&i trebuie s identificai entitile i atributele fiecreia precum i relaiile care se realizeaz ntre entiti. 1D- ,e cere s se modeleze3 folosind o diagram E#D scenariul de mai sus3 astfel 4nc8t s fie o reprezentare c8t mai apropiat de realitate3 care s surprind toate situaiile care pot s apar)embrii unei organizaii trebuie s participe n ultimul +eeN4end din luna septembrie (IO4IP septembrie) la /onferina 9aional organizat la 7imioara. /omitetul de organizare format din membrii timioreni ai asociaiei s4a interesat la mai multe hoteluri i in final a ales hotelul *tarIKKK care a prezentat oferta cea mai bun. 2a acest hotel vor fi cazai participanii i hotelul dispune i de o sal adecvat desfurrii lucrarilor. /onferina se desfoar pe durata a trei zile, vineri are loc sosirea participanilor i acomodarea, implicit dou nopi de cazare, deci cei care vin vineri aleg pachetul "!ll included#. 2ucrrile propriu4zise ale conferinei se desfoar s&mbt i duminc, deci cei care nu pot veni de vineri pot opta pentru alt tip de pachet de cazare. 'articipanii care nu doresc s doarm la hotel i cei din 7imioara pot opta pentru al treilea tip de pachet. 'articipanii vin din mai multe orae n care asociaia are filiale, din fiecare ora pot participa una sau mai multe persoane. )embrii filialelor din ar primesc un e4mail cu urmtorul coninut. 1- )achet ' 6 'll included /uprinde. I nopti de cazare I cine, ? pr&nz, I mic de5un mapa conferin vizitarea oraului, mall chef vineri i bal s&mbt *ferta special p8n la 1 octombrie: 55F lei5- )achet B 6 MOdium /uprinde. ? noapte de cazare
41

4 mapa conferin 4 ? pr&nz, ? cin, ? mic de5un 4 vizitarea oraului, mall 4 bal s&mbt *ferta special p8n la 1 octombrie: 1DF lei<- )achetul C 6 %ight /uprinde. mapa conferin 4 chef vineri, bal s&mbt 4 vizitarea oraului, mall *ferta special p8n la 1 octombrie: 1AF lei< rugm s trimitei p&n la data de IK septembrie c&te un tabel cu numele persoanelor care doresc s participe, tipul de pachet dorit precum i data i ora apro imativ la care sosete fiecare participant i s facei plile n contul urmtor. !(/ (anN *.!. 8%IQ (!(/ KKKK KKJO K?QI RKKK '&n n data de IK septembrie. 0iecare dintre acestea poate opta pentru unul din cele trei pachete. 'entru organizatori este important s cunoasc numrul de participani i dorinele acestora pentru a face din timp rezervrile necesare. !a c cer filialelor c&te un tabel cu participanii, dar organizatorii trebuie s fac o verificare i la banc dac s4au virat banii n contul respectiv. 'ersoanele din comitetul de organizare au diverse responsabiliti. unii se ocup de cazare,alii de organizarea timpului liber, alii de realizarea materialelor pentru conferin. 3n tabel cu confirmarea participrii de e emplu, din 5udeul -alai este n formatul urmtor. 9.rcrt. 9umele 7ip pachet Data, ora sosire ? 'opescu !na ! IO sep I <asilescu Diana ! IO sep J 8dulescu )arcel / IQ sep 1E- , se realizeze o diagram entitate!relaie care s ofere3 pe baza scenariului3 informaiile cerute'roprietarul unei firme de transport marfa i persoane dorete s informeze clienii cu privire la serviciile oferite de firma de transport. 4 curse (permanente, temporare), 4 tarife, 4 faciliti, 4 discount4uri (reduceri pe anumite criterii), 4 inchirieri mi5loace de transport, 4 prezentare. autoturisme, microbuze, camioane , 4 staii regulateG harta de cltorieG traseuG 4 informaii despre oferi (vechime, antecedente, ruta) 4 modaliti de contact (adresa firmei, agenii, telefon>fa , e4mail, pagina +eb) pentru informatii referitoare la serviciile oferite de firma de transport. 5F- , se realizeze o diagram entitate!relaie care s modeleze scenariul urmtor: 2a muzeul din localitate trebuie realizat o baz de date care s conin informaii despre toate obiectele aflate n colecia muzeului. )uzeul are mai multe secii. art, etnografie, istorie. 'entru fiecare e ponat trebuie s se rein numrul de inventar, anul intrrii n colecia muzeului, secia de care aparine. *ecia de art are n colecii tablouri, gravuri, statui. 'entru obiectele de art trebuie s se cunoasc autorul, titlul lucrrii, anul realizrii, curentul artistic n care se ncadreaz. 'entru obiectele de la secia de istorie (documente, diverse obiecte din ceramic, metal, unelte, arme etc) trebuie reinut anul descoperirii, situl arheologic n care au fost gsite, perioada istoric n care se ncadreaz i o datare e act sau apro imativ. 'entru obiectele etnografice (componente ale portului popular, obiecte de uz casnic, mic mobilier, vase din ceramic, obiecte de cult) se reine localitatea din care provin i anul apro imativ al realizrii. 3nele dintre obiecte trebuie restaurate, dar numai de ctre specialiti, de care muzeul dispune. 0iecare secie are un responsabil, care are n subordine mai muli muzeografi (pentru fiecare se cunoate numele, adresa, vechimea, salariul i specializarea). !cetia nu se pot muta de la o secie la alta deoarece
42

fiecare secie necesit o anumit specializare i fiecare este pregtit pentru restaurarea unui anumit tip de obiecte.

43