Sunteți pe pagina 1din 15

Laboratorul 2

Crearea bazelor de date Access


Proiectarea bazelor de date Realizarea unei baze de date presupune parcurgerea urmtoarelor etape: * analiza sistemului (domeniului) pentru care se realizeaz baza de date, precum i a cerinelor informaionale asociate; * proiectarea structurii bazei de date (schema conceptual, intern i extern); * ncrcarea datelor n baza de date ; * exploatarea i ntreinerea bazei de date8. Activitile desfurate n etapa de proiectare depind n mare msur de specificul activitii pentru care se dorete realizarea unei baze de date, dar exist i o serie de elemente cu caracter general. n literatura de specialitate se ntlnete i concepia potrivit creia proiectarea unei baze de date este un proces n doi pai9: * etapa proiectrii conceptuale (independent de SGBD) - ar consta n analiza sistemului; * etapa proiectrii fizice (n funcie de un anumit SGBD) - grupeaz activitile de proiectare a structurii, ncrcare, exploatare i ntreinere a bazei de date. Obiectivele proiectrii bazei de date pot fi grupate n dou categorii: cerine funcionale: * rapoartele (situaiile de ieire) necesare; * cererile, interogrile care pot aprea; * alte ieiri care ar putea fi trimise altor sisteme de prelucrare a datelor; * toate actualizrile necesare; * toate calculele necesare; * toate restriciile sistemului (de exemplu, restricii funcionale sau restricii de comportament); * toate sinonimele utilizate pentru un atribut dat; restriciile fizice (volumul prelucrrilor i evaluarea performanelor): * numrul, dimensiunile i frecvena rapoartelor; * timpul de rspuns pentru fiecare interogare; * timpul de rspuns pentru fiecare actualizare; * msurile de securitate prin restricionarea accesului. Analiza preliminar i identificarea cerinelor informaionale Activitatea de analiz cuprinde trei laturi importante: * analiza componentelor sistemului i a legturilor dintre acestea (analiza structural sau static)modelul structural sau static al sistemului; * analiza strilor sistemului i a tranziiilor posibile ntre aceste stri (analiza comportamental sau temporal)modelul dinamic (temporal) al sistemului;

8 9

vezi Lungu, I. i colab. ,Baze de date. Organizare, proiectare i implementare, Editura ALL, Bucureti, 1995, p. 26. Pratt, P.J., Adamski, J.J., Database Systems. Management and Design, Boyd&Fraser, Boston, 1991, p. 285

* analiza cerinelor informaionale, respectiv a transformrilor de date din cadrul sistemului prin care sunt satisfcute necesitile de informare ale organismului studiatmodelul funcional al sistemului; * integrarea celor trei modele n scopul completrii i corelrii lor. n urma acestei analize se trece la definirea structurii bazei de date. Importana analizei preliminare pentru definirea structurii difer dup modelul de organizare a bazei de date. Astfel, pentru modelele ierarhic i reea analiza structural sau static este foarte important, pentru modelul relaional toate etapele au cam aceeai importan, iar pentru modelul OO trebuie acordat maximum de atenie analizei temporale i celei funcionale. Analiza structural sau static Aceast etap are rolul evidenierii componentelor (obiectelor) din cadrul sistemului pentru care se proiecteaz baza de date, precum i a legturilor dintre aceste componente. Se cunosc n acest sens mai multe tehnici de analiz: * modelul canonic (James Martin) * modelul Entitate-Asociere (Peter Chen); * tehnica SDM - Semantic Data Model (Michael Hammer, Dennis McLeod) .a. Analiza dinamic (de comportament) Are drept scop explicarea comportamentului elementelor sistemului analizat. Construirea modelului dinamic presupune: * identificarea strilor n care se afl componentele sistemului; * identificarea evenimentelor care determin trecerea unei componente dintr-o stare n alta; * stabilirea succesiunii evenimentelor i construirea unei diagrame care s descrie fluxul acestora (diagram a strilor de tranziie, a fluxului de evenimente). Analiza cerinelor informaionale (analiza funcional) Urmrete determinarea transformrilor pe care le suport datele n sistemul studiat, n scopul satisfacerii cerinelor informaionale aferente acestui sistem. Transformrile de date se prezint sub forma unui flux al prelucrrilor, in care nodurile reflect procesele i arcele fluxurile informaionale. Construirea modelului funcional implic o serie de etape: * identificarea datelor de ieire i a celor de intrare; * construirea de diagrame de flux; * identificarea restriciilor pentru anumite date; * precizarea unor criterii de optimizare a prelucrrilor. Integrarea modelelor sistemului n etapa de proiectare, modelele static i dinamic sunt complet independente de SGBD (aplicaiile) ce urmeaz a se folosi, pe cnd modelul funcional este orientat preponderent spre acestea. Rezultatele cercetrii din etapele anterioare sunt supuse unui proces de integrare, n urma cruia se obine o viziune de ansamblu a sistemului studiat. Cu aceast ocazie se testeaz completitudinea i consistena modelelor static i dinamic, anume dac informaiile dispun de coeren i dac nu au fost omise la analiz unele elemente informaionale. n caz de necesitate, n aceast etap se pot aduce completri modelului. Ca urmare a integrrii, dispare independena fa de aplicaii a modelelor static i dinamic, ca i orientarea spre aplicaii a modelului funcional. Este un avantaj, deoarece pe de o parte orientarea excesiv spre aplicaii complic n mod inutil modelul i-i scad adaptabilitatea, iar pe de alt

parte efectuarea unei analize complet independente de aplicaii presupune un mare consum de resurse de toate tipurile. Proiectarea structurii bazei de date n urma analizei sistemului, se obin aa-numitele modele semantice sau conceptuale, care sunt independente de instrumentul care le va pune n aplicare. Este foarte important ca analiza s nu fie tributar vreunui SGBD, deoarece: * n cazul schimbrii SGBD ar fi nevoie de reproiectarea BD; * caracteristicile unui anume SGBD pot limita activitatea de analiz, fcnd modelul foarte puin flexibil; * dac utilizatorul final nu cunoate nimic despre un anume SGBD, este imposibil s-i formuleze cerinele de informare n mod adecvat. Spre deosebire de analiza preliminar, proiectarea structurii bazei de date impune focalizarea ateniei asupra unui SGBD. Astfel, modelul conceptual este transpus ntr-un model al datelor care are caracteristicile proprii SGBD-ului ales de proiectant. Proiectarea structurii bazei de date implic urmtoarele activiti10: * alegerea SGBD utilizat pentru implementarea i exploatarea BD; * proiectarea schemei conceptuale a BD; * proiectarea schemei externe (subschemei) BD; * proiectarea schemei interne (de memorare) a BD. Alegerea sistemului de gestiune a bazei de date n alegerea unui SGBD, se au n vedere mai multe aspecte: cerinele utilizatorilor, sub aspectul: * tipurilor de aplicaii; * timpului de rspuns; * confidenialitii i securitii datelor; * uurinei n utilizare; cerinele de ordin tehnic: * portabilitatea SGBD; * portabilitatea datelor i programelor de aplicaii; * condiiile de ncrcare, exploatare i ntreinere a BD; cerine de ordin economic: * ncadrarea n bugetul destinat acestui scop; * timpul necesar pentru implementarea sistemului (inclusiv pregtirea utilizatorilor). n urma analizei acestor cerine, ca i a SGBD-urilor disponibile i a modului cum ele ofer rspuns la cerinele utilizatorilor, se decide care va fi SGBD utilizat. Proiectarea schemei conceptuale n accepiunea cea mai simpl, schema conceptual semnific descrierea datelor i a relaiilor dintre acestea. Elaborarea schemei conceptuale presupune: * stabilirea coleciilor de date i a coninutului acestora; * determinarea legturilor dintre coleciile de date; * testarea i revizuirea eventual a schemei obinute; * descrierea schemei conceptuale n maniera proprie SGBD ales.
10

Lungu, I. i colab., Op. cit., p. 53

n stabilirea coleciilor de date i a legturilor dintre acestea se pornete de la entitile identificate n etapa de analiz. Astfel, n cazul unui proces economic oarecare, aceste entiti vor fi participanii la procesul n cauz. Spre exemplu, n cazul unei activiti comerciale, putem identifica la prima vedere cteva entiti: cumprtor, vnztor, marf etc. Pentru aceste entiti se vor preciza atributele sau proprietile care prezint interes pentru utilizatorii informaiei, eventual i o serie de atribute auxiliare, utilizate pentru a exprima legturi ntre entiti. Aceste entiti alctuiesc modelul semantic. Nu este obligatoriu ca fiecare component a acestui model s atrag constituirea unei colecii de date distincte. n practic, pentru mbuntirea performanelor aplicaiilor (n special optimizarea timpului de acces la date), poate opera o sporire, dar i o reducere a numrului de colecii de date proiectate iniial. n realizarea coleciilor de date se poate porni i de la documentele de ieire (cele care conin informaiile de care are nevoie utilizatorul), caz n care toate atributele identificate concur la alctuirea unui dicionar de date i urmeaz a fi grupate n funcie de anumite legturi identificabile ntre atribute. Modul de reprezentare a legturilor dintre coleciile de date identificate difer n funcie de modelul datelor pe care-l implic SGBD utilizat. Spre exemplu, pentru modelele ierarhic i reea se utilizeaz pointeri, iar pentru modelul relaional, chei externe (strine). Testarea schemei conceptuale presupune verificarea corectitudinii (a modului n care aceasta ilustreaz cerinele utilizatorilor) i consistenei acesteia (a corespondenei dintre legturile determinate i lumea real). De asemenea, trebuie ca redundana datelor s se situeze la un nivel minim. Dac n aceast etap se identific erori, se poate reveni la etapa de proiectare i uneori chiar la cea de analiz a sistemului. n ceea ce privete descrierea schemei conceptuale, aceasta comport transpunerea schemei n limbajul de manipulare a datelor specific SGBD ales. Rezultatul acestui proces l constituie schema (n accepiune CODASYL11) bazei de date.

2.1 Probleme rezolvate


Creai o baza de date pentru evidena situaiei colare a studenilor. Baza de date trebuie s stocheze notele acordate de profesori, studenilor, la fiecare materie n sesiunea de examene.

Rezolvare
Vom folosi modelul Entitate-Atribut-Relatie (EAR). Acest model este folosit pentru proiectarea sistemelor informatice. Trebuie subliniat ca nainte de realizarea efectiva a bazei de date cu ajutorul produsului Microsoft Access aceasta trebuie proiectata foarte bine la nivel conceptual. Aici intervine utilitatea modelului EAR. In conformitate cu acest model, proiectarea unei baze de date presupune parcurgerea urmtorilor pai: Pasul 1 Se identific entitile bazei de date. In cazul nostru entitile sunt: studenii, profesorii, materiile si notele.

11

abreviere de la "Conference on Data Systems Languages"

Pasul 2 Identificarea asocierilor ntre entiti este urmtorul pas. Prin asociere se nelege o legtura ntre cele dou entiti bazata pe un atribut al lor.. Nu exista o procedura determinista in stabilirea asocierilor dintre entiti. Stabilirea acestora este o operaie relativ intuitiva care, n cazul bazelor de date mari, este organizat pe baza unor metodologii. n cazul nostru entitile au urmtoarele asocieri care genereaz relaii de tip unu-la-multi

Fig. nr.2.1. Identificarea entitilor bazei de date Un student are mai multe note, evident, la o materie poi primi mai multe note ( dac ai absentat sau nu ai promovat examenul , sau te prezini la mrire de not), un profesor acord mai multe note . Pasul 3 Identificarea atributelor entitilor. Stabilirea atributelor se face n funcie de specificul utilizrii bazei de date. O atenie sporit trebuie acordat atributelor cheie primar (index) n cazul nostru am preferat, pentru simplificarea codificrii datelor, s apelm la facilitatea Access de a construi automat un record-number, ID, pentru identificarea unic a nregistrrilor dintr-un tabel. In cazul nostru vom folosi urmtoarele atribute:

Putem trece acum la crearea efectiv a bazei de date. Mai nti trebuie creat fiierul .mdb al bazei care pstreaz descrierea obiectelor bazei de date: tabele, interogri, rapoarte, formulare. Procedura este urmtoarea: 1. Select consecutiv din meniul principal opiunile : File, New, Blank Database; 2. n caseta File name se tasteaz numele fiierului mdb, care va fi de fapt chiar numele bazei de date; 3. ncheiem cu un clic pe butonul Create; 4. Avem la dispoziie acum fereastra Database care ne permite selecia obiectelor asociate bazei de date n vederea crerii, modificrii sau activrii.

Tabelele se creeaz cel mai simplu n modul de lucru Design View. Procedura de operare este urmtoare: 1. Selectm din fereastra Database, clasa de obiecte Tables; 2. Selectm cu un dublu clic modul de lucru: Create Table in Design View;

3. Fereastra Table Designer are dou panouri orizontale: - cel de sus, pentru introducerea numelui i tipul fiecrui cmp, - cel de jos pentru setarea proprietilor cmpului. 4. Se descriu succesiv cmpurile fiecrui tabel n parte, fr cmpul ID pe care-l adaug Access la momentul nchiderii ferestrei Table Designer. Fereastra se nchide dup descrierea fiecrui tabel i se redeschide la tabelul urmtor.

ncrcarea date in tabele este pasul urmtor. Operaia este cunoscut i sub numele de populare a bazei de date. Procesul de ncrcare se face cu ajutorul interfeei vizuale care se activeaz astfel: 5. Efectum dublu-click pe numele tabelului n fereastra Database; 6. Tastm valorile pentru fiecare cmp, trecnd la cmpul urmtor cu un TAB; 7. La sfrit nchidem fereastra de lucru pentru tabelul curent i repetm procedura cu tabelul urmtor.

Datele se pot introduce i folosind formulare electronice Forms, descrise mai trziu n aceast lucrare. Ultima etapa din crearea bazei de date include definirea relaiilor dintre tabele cu ajutorul opiunii Relationship din meniul Tools.

Utilitarul arata ca in figura de mai jos:

1. Se adaug cu un clic pe butonul Add fiecare tabel din fereastra Show table n fereastra Relationships; 2. La sfrit nchidem fereastra Show table cu un clic pe butonul Close.

3. Construim relaiile dintre tabele cu ajutorul mouse-ului, clic stnga pe cmpul cheie primar din tabelul printe i cu butonul mouse-ului apsat, deplasm cursorul peste cmpul cheie extern corespondent din tabelul fiu. Eliberm butonul mouse-ului i pe ecran apare o fereastra care cere confirmarea legturii.

4. Apsm butonul Create pe ecran apare legtura desenat ca o linie.

5. Se procedeaz la fel pentru toate celelalte legturi.

In acest moment, procesul de creare a bazei de date este ncheiat i se poate trece mai departe la exploatarea ei. In lipsa elementelor de mai sus, nu este posibila folosirea tuturor facilitilor relaionale ale produsului Microsoft Access.

2.2. Probleme propuse


1. Pentru baza de date de la problema 1, sa se adauge si entitatea an universitar. Se vor actualiza si legturile intre tabele. 2. Folosind baza de date de la problema 1 s se extind numrul de atribute al entitii studeni. 3. Folosind baza de date de la problema 1 s se extind numrul de atribute al entitii profesori. 4. S se proiecteze o baza de date care poate fi folosita pentru a memora crile din biblioteca personala i persoanele crora li s-au mprumutat cri. 5. S se realizeze o baza de date pentru gestiunea vnzrilor unui magazin pe produse i separat pe fiecare angajat. 6. Realizai o baza de date pentru evidena ctigurilor i a cheltuielile din bugetul familiei, pe tipuri de cheltuieli i pe persoanele ce le-au efectuat. Se va lua in considerare c ntr-o familie doar prinii realizeaz ctiguri dar cheltuieli pot face toi membrii familiei.

7. Realizai o baza de date pentru gestiunea procesul de rezervare a camerelor intr-o pensiune turistica. Se presupune ca pensiunea dispune de 15 de camere, are trei recepioneri, doua femei de serviciu si un director. Clienii pot rezerva camere prin telefon, prin email sau la recepia pensiunii.

8. S se creeze o baza de date pentru gestiunea exporturilor unei firme. Managerul firmei este interesat s cunoasc: - lista produselor din oferta firmei, cu stocul la zi i preul de catalog; - lista clienilor externi, grupai pe ri, inclusiv cifra de afaceri; - lista furnizorilor grupai pe judee, inclusiv banca ce-i reprezint; - lista contractelor ncheiate de la nceputul anului cu clienii externi - lista comenzilor ctre furnizorii interni cu produsele pentru export; - lisa declaraiilor vamale pentru produsele livrate n luna curent.

S-ar putea să vă placă și