Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind...

134
Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access UNIVERSITATEA VALAHIA TÂRGOVIŞTE COLEGIUL UNIVERSITAR TEHNIC TEHNICĂ DE CALCUL Lucrare de absolvire COORDONATORI Şef lucrare drd. ION ISTUDOR Şef lucrare drd. LUMINIŢA DUŢĂ ABSOLVENT 1

Transcript of Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind...

Page 1: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

UNIVERSITATEA VALAHIA TÂRGOVIŞTECOLEGIUL UNIVERSITAR TEHNIC

TEHNICĂ DE CALCUL

Lucrare de absolvire

COORDONATORI

Şef lucrare drd. ION ISTUDOR

Şef lucrare drd. LUMINIŢA DUŢĂ

ABSOLVENT

IUNIE 2004

1

Page 2: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

PROIECTAREA BAZELOR DE DATE RELAŢIONALE

PENTRU GESTIONAREA UNEI BIBLIOTECI

DE CD-URI FOLOSIND MICROSOFT ACCESS

2

Page 3: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

CUPRINS

Introducere……………………………………………………………......5

CAPITOLUL 1: Prezentare a domeniului bazelor de date....................7

1.1 Ce este şi cum se gestionează o bază de date?.............................7

1.2 – Arhitectura unei baze de date..................................................11

1.3 – Proiectarea bazelor de date......................................................12

1.4 – Securitatea datelor...................................................................15

CAPITOLUL 2: Niveluri şi modele de reprezentare

a datelor în bazele de date...................................16

2.1 – Modelarea logică a datelor......................................................16

2.2 – Modelul relaţional de baze de date.........................................18

2.3 – Modelul conceptual de baze de date.......................................21

2.4 – Reguli de verificare şi normalizare

a Modelării Conceptuale a Datelor (MCD)...........................23

2.4.1 – Restricţii de integritate şi reguli de verificare a MCD....23

2.4.2 – Dependenţe funcţionale ..................................................24

2.4.3 - Normalizarea....................................................................25

CAPITOLUL 3: Descrierea aplicaţiei.....................................................30

CAPITOLUL 4: Prezentare Microsoft Access –

Realizarea aplicaţiei.................................................30

4.1– Prezentare Generală Microsoft ACCESS 2000........................32

4.1.1 – Arhitectura Microsoft ACCESS......................................34

4.1.2 – Instrumentul Wizard........................................................35

4.1.3 – Crearea unei baze de date................................................36

4.1.4 – Deschiderea unei baze de date deja existente..................38

3

Page 4: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.1.5 – Salvarea modificărilor aduse unei baze de date...............38

4.2 – Crearea structurii bazei de date...................................................39

4.2.1 – Modelul conceptual al datelor.............................................39

4.2.2 – Modelul relaţional al datelor...............................................44

4.2.3 – Crearea tabelelor.................................................................45

4.2.4 – Tipuri de date......................................................................46

4.2.5 – Introducerea datelor în tabele..............................................47

4.2.6 – Salvarea datelor...................................................................47

4.3 – Interogarea bazei de date............................................................49

4.4 – Formulare...................................................................................58

4.4.1 – Crearea automată a unui formular......................................58

4.4.2 – Subformulare......................................................................66

4.4.3 – Proceduri şi obiecte Visual Basic

pentru ACCESS 2000...................................................67

4.5 – Rapoarte.....................................................................................80

4.6 – Comenzi macro..........................................................................84

CAPITOLUL 5: Concluzii.....................................................................86

Glosar.......................................................................................................88

Bibliografie..............................................................................................90

4

Page 5: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

5

Page 6: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

INTRODUCERE

În contextul societăţii actuale, caracterizată printr-o explozie fără precedent în

istoria omenirii, sistemele informatice reprezintă unul din elementele fundamentale

care generează şi controlează fluxurile informaţionale la nivel micro şi

macroelectronic.

De mai bine de două decenii, bazele de date prin performanţele şi avantajele

lor, au reprezentat şi vor rămâne în continuare modalitatea principală de structurare şi

organizare a datelor în cadrul sistemelor informatice.

În plus, producătorii de software au creat Sisteme de Gestiune a Bazelor de

Date din ce în ce mai performante şi în acelaşi timp cât mai simplu de utilizat.

Lucrarea aleasă pentru realizare, se referă la proiectarea bazelor de date

relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft ACCESS.

În contextul prezentat, lucrarea ce va fi realizată, îşi propune să ofere o parte a

cunoştinţelor necesare pentru iniţierea şi deasemenea pentru proiectarea bazelor de

date folosind SGBD-ul Microsoft ACCESS 2000.

Lucrarea de faţă, este structurată pe următoarele capitole:

Capitolul 1 denumit “Prezentare a domeniului bazelor de date” va fi o

prezentare a ceea ce reprezintă domeniul bazelor de date, cum pot fi gestionate bazele

de date şi deasemenea arhitectura şi proiectarea lor.

În capitolul 2 “ Niveluri şi modele de reprezentare a datelor în bazele de date”,

se vor prezenta noţiuni despre: modelarea logică a datelor, modelul relaţional şi

conceptual de baze de date şi reguli de verificare şi normalizare a Modelării

Conceptuale a Datelor.

Capitolul 3 va reprezenta “Descriere aplicaţiei” ce va fi realizată.

În capitolul 4, intitulat “Prezentare Microsoft ACCESS”, se va prezenta în

detaliu, aplicaţia ce va fi realizată, descriind totodată instrumentele Access ce vor fi

5

Page 7: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

utilizate. Se vor explica aplicaţiile ce se doresc a fi făcute pe baza de date şi se vor

prezenta capturi din aplicaţia propriuzisă, toate acestea sub forma unui manual de

utilizare.

În ultimul capitol, capitolul 5, se vor prezenta concluziile, de unde s-a pornit,

cum s-a dorit a fi aplicaţia şi care este rezultatul conceperii şi proiectării aplicaţiei de

baze de date.

6

Page 8: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

CAPITOLUL 1

1. PREZENTARE A DOMENIULUI BAZELOR DE DATE

1.1 Ce este şi cum se gestionează o bază de date?

Având în vedere utilizarea din ce în ce mai largă a tehnicii de calcul în

activitatea zilnică şi acumularea unui volum din ce în ce mai mare de informaţii

reţinute pe medii magnetice, se pune problema determinării unor metode din ce în ce

mai eficiente de reprezentare şi prelucrare ale acestor informaţii. În bună parte,

acestea fac obiectul unui domeniu al informaticii numit baze de date, domeniu în

plină dezvoltare în ultima perioadă.

Cercetările au cuprins mai întâi preocupări privind determinarea unor modele

de baze de date şi apoi crearea unor limbaje de programare ce permit descrierea şi

utilizarea bazelor de date într-un mod cât mai prietenos. S-au dezvoltat tehnici

eficiente de studiere a calităţilor structurilor asociate informaţiei, precum şi tehnici de

automatizare a proiectării şi optimizării bazelor de date.

O bază de date conţine toate informaţiile necesare despre obiectele ce intervin

într-o mulţime de aplicaţii, relaţiile logice între aceste informaţii şi tehnicile de

prelucrare corespunzătoare. În bazele de date are loc o integrare a datelor, în sensul că

mai multe fişiere sunt privite în ansamblu, eliminându-se pe cât posibil informaţiile

redundante. De asemenea se permite accesul simultan la aceleaşi date, situate în

acelaţi loc sau distribuite spaţial, a mai multor persoane de pregătiri diferite, fiecare cu

stilul personal de lucru.

O bază de date, mai poate fi definită ca un ansamblu de date elementare sau

structurate, accesibile unei comunităţi de utilizatori. Mai concret, o bază de date, este

un ansamblu de fişiere intercorelate, care conţine nucleul de date necesare unui sistem

informatic (aplicaţie informatică).

7

Page 9: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Un fişier este un ansamblu de înregistrări fizice, omogene din punct de vedere

al conţinutului şi al prelucrării.

O înregistrare fizică este unitatea de transfer între memoria internă şi cea

externă a calculatorului. Aceasta este formată din una sau mai multe înregistrări

logice.

O înregistrare logică este unitatea de prelucrare din punct de vedere al

programului utilizator. Aceasta este formată dintr-un ansamblu de câmpuri, care

descriu o anumită realitate.

Sistemul de programare care permite construirea unor baze de date,

introducerea informaţiilor în bazele de date şi dezvoltarea de aplicaţii privind bazele

de date se numeşte sistem de gestiune a bazelor de date - SGBD.

Un SGBD dă posibilitatea utilizatorului să aibă acces la date folosind un

limbaj de nivel înalt, apropiat de modul obişnuit de exprimare, pentru a obţine

informaţii, utilizatorul făcând abstracţie de algoritmii aplicaţi pentru selecţionarea

datelor implicate şi a modului de memorare a lor. SGBD-ul este o interfaţă între

utilizatori şi sistemul de operare.

Orice SGBD conţine, printre alte componente, un limbaj de descriere a datelor

– LDD – care permite descrierea structurii unei baze de date, a fiecărei componente a

ei, a relaţiilor dintre componente, a drepturilor de acces a utilizatorilor la baza de date,

a resticţiilor în reprezentarea informaţiilor şi alte elemente asemănătoare. LDD este

utilizat atât pentru proiectarea bazelor de date, cât şi pentru redefinirea lor. O altă

componentă foarte importantă a unui SGBD este limbajul de cereri – LC sau limbajul

de prelucrare a datelor – LPD – ce permite operaţii asupra bazelor de date, cum ar fi:

încărcarea bazei de date, inserarea unui nou element, ştergerea unui element,

modificarea unui element, căutarea unor elemente, realizarea a diferite statistici

asupra datelor şi alte asemenea operaţii.

Spre deosebire de limbajele de programare obişnuite, în care declararea datelor

este făcută în acelaşi loc cu prelucrarea lor, bazele de date prevăd limbaje separate

pentru declarare şi pentru prelucrare. Aceasta, deoarece într-un program obişnuit

8

Page 10: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

datele există efectiv numai pe timpul rulării programului, pe când într-o bază de date,

în general, datele sunt definite o dată pentru totdeauna şi nu mai sunt necesare

redefiniri ulterioare la fiecare prelucrare. Uneori se pot redefini date, dar, practic,

aceasta se întâmplă destul de rar. Limbajele LDD şi LC sunt, de cele mai multe ori,

extinderi ale unor limbaje de programere numire limbaje gazdă. Compilarea

succesiunilor de comenzi pentru descrierea datelor sau pentru operarea cu date se

reduce, în acest caz, la o precompilare, adică transformarea acestor comenzi într-o

succesiune de instrucţiuni ale limbajului gazdă care, prin executare, să dea efectul

dorit.

O altă modalitate de operare este aceea a transformării comenzilor în lansări de

programe executabile. Comenzile sunt descrise prin sintaxe specifice fiecărui tip de

SGBD, iar interpretarea şi activarea lor se face automat, prin rutine scrise, de obicei,

în limbajul gazdă. În acest fel, calităţile SGBD-ului depind în mare măsură de

calităţile limbajului utilizat.

În funcţie de modul de exploatare a bazelor de date, utilizatorii pot fi împărţiţi

în următoarele clase:

Utilizatorii obişnuiţi, care pot să obţină informaţiile fără să aibă cunoştinţe

de programare. Ei obţin informaţiile dorite prin comenzi cunoscute şi,

eventual, răspunzând la diferitele opţiuni pe care le indică sistemul de

calcul la un moment dat.

Programatorii de aplicaţii, care pot scrie programele în LC, acestea fiind

apoi compilate şi memorate în fişiere, putând fi lansate în execuţie de

utilizatori prin invocarea numelui asociat lor.

Administratorul bazei de date, care stabileşte structura iniţială a bazei de

date şi modul de memorare a datelor la nivel fizic, acordă utilizatorilor

drepturi de acces la baza de date sau părţi ale ei, stabileşte condiţiile pentru

asigurarea securităţii şi integrităţii datelor, modifică structura bazei de date

făcând periodic copii şi reconstituind eventual baza de date în cazul în care

9

Page 11: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

au apărut erori datorate componentelor soft, hard sau utilizării, şi răspunde,

în general, de modul de utilizare al bazei de date.

Administratorul sistemului de baze de date, care stabilaşte bazele de date de

pe un sistem de calcul, alocă spaţii de memorare şi asigură drepturi de

acces.

Cele mai multe SGBD-uri conţin şi o colecţie de utilitare folosite în diferitele

aplicaţii, cum sunt: procesoare pentru limbaje de cereri, editoare de rapoarte,

subsisteme de reprezentări grafice, posibilităţi de lucru tabelat, procesoare de limbaje

naturale, programe statistice, posibilităţi de copiere, generatoare de aplicaţii şi altele.

10

Page 12: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

1.2 Arhitectura unei baze de date

O bază de date poate fi privită din mai multe puncte de vedere, precum:

- Punctul de vedere al utilizatorilor, care lucrează cu anumite părţi componente

ale bazei de date numite vederi. Vederile sunt descrise prin subscheme în sublimbaje

ale limbajului de descriere a datelor – SLDD. De asemenea, utilizatorii pot să

primească răspunsuri la diferitele cereri formulate prin intermediul limbajului de

prelucrare a datelor ce sunt specifice structurilor virtuale date de vederi.

- Punctul de vedere al administratorului bazei de date, care integrează toate

vederile referitoare la baza de date într-un model numit schemă conceptuală. Schema

conceptuală constituie nivelul logic al bazei de date.

- Punctul de vedere al implementatorului bazei de date; de cele mai multe ori,

el coincide cu administratorul bazei de date, care priveşte baza de date ca pe o colecţie

de fişiere memorate pe diferite medii externe, cum sunt discurile magnetice. Acestea

constituie nivelul fizic al bazei de date fiind de fapt singurul nivel existent efectiv.

Primele două nivele sunt descrise prin planuri ce constau în enumerarea

tipurilor de entităţi ce apar în baza de date, relaţiile între aceste tipuri de entităţi şi

modul de trecere de la noţiunile acestui nivel la nivelul imediat următor. În mod

curent, aceste planuri se numesc scheme externe, subscheme conceptuale, au vederi

pentru primul nivel şi scheme conceptuale pentru al doilea nivel. Descrierile la nivel

fizic sunt făcute prin scheme interne sau scheme fizice.

11

Page 13: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

1.3 Proiectarea bazelor de date

Proiectarea bazelor de date presupune fixarea structurii bazei de date şi a

metodelor de prelucrare a datelor, spre deosebire de utilizarea bazei de date, care

priveşte mai mult informaţiile stocate în baza de date la un moment dat. Dacă în mod

obişnuit baza de date îşi schimbă frecvent conţinutul, structura ei rămâne

nemodificată pe lungi perioade de timp.

Prin proiectare se determină un model semantic, care să reflecte cât mai fidel

lumea reală, construit astfel:

1. Se identifică o mulţime de concepte semantice (entităţi, tipuri de entităţi,

proprietăţi ale entităţilor, identificatorii entităţilor, relaţii între entităţi şi altele) ce dau

informaţii despre lumea reală.

2. Se asociază obiecte simbolice formale prin care sunt reprezentate conceptele

semantice.

3. Se definesc reguli de integritate formale ce se aplică obiectelor simbolice.

4. Se defineşte o mulţime de operatori formali ce pot să transforme obiectele

formale.

Un model de etapizare a construirii unei baze de date ar putea fi următorul:

1. Studiul de fezabilitate, ce constă în cercetarea sistemelor operative deja

existente, stabilirea unor alternative cu evaluarea costurilor, a avantajelor şi

dezavantajelor fiecărei alternative în parte.

2. Cercetarea sistemului prin determinarea diferitelor detalii ale sistemului

prezent (tipuri de date, dimensiuni, condiţii excepţionale) folosind metode de

interogare, chestionare, exemplificări şi observaţii directe aplicate în sistemul deja

existent.

3. Analiza sistemului prin determinarea cauzelor diferitelor evenimente şi a

adoptării diferitelor metode, eventuale alternative posibile şi justificarea lor.

4. Proiectarea sistemului prin determinarea celui mai bun model de

reprezentare şi prelucrare a datelor, de asigurare a securităţii şi integrităţii.

12

Page 14: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

5. Dezvoltarea sistemului prin stabilirea detaliilor asociate datelor prevăzute a

fi luate în consideraţie, a relaţiilor dintre ele şi a modului de reprezentare fizică.

6. Implementarea sistemului prin proiectarea, scrierea şi testarea programelor,

antrenarea utilizatorilor, alcătuirea documentaţiei, crearea şi încărcarea fişierelor.

7. Revizuire şi întreţinere prin probe de lucru ale noului sistem, efectuarea unor

eventuale modificări, adăugarea de noi componente şi urmărirea procesului de

prelucrare a datelor.

În proiectarea bazelor de date se ţine seama de independenţa datelor pe diferite

nivele. De exemplu, reprezentarea fizică a datelor se poate schimba în timp pentru a

obţine performanţe superioare din punct de vadere al timpului de răspuns şi al

spaţiului ocupat, fără ca aceasta să afecteze modul de reprezentare a datelor în schema

conceptuală.

Această independenţă se numeşte independenţă fizică a datelor. De asemenea,

între vederi şi schema conceptuală există o independenţă numită independenţă logică

a datelor. În timpul existenţei unei baze de date pot apărea modificări în schema

conceptuală prin adăugarea unor noi entităţi sau prin adăugarea de noi atribute unor

entităţi existente.

Proiectarea unei baze de date priveşte în primul rând nivelul logic şi mai puţin

pe cel fizic. Proiectarea se poate face plecând de la modelul relaţional care permite o

tehnologie de proiectare şi apoi se poate transforma rezultatul proiectării în oricare

dintre modele, prin adaptările corespunzătoare.

Modelarea bazelor de date este un proces de definire amănunţită, precisă, pas

cu pas, a tuturor elementelor ce permit o documentare completă privind cererile de

informaţii. În această procedură se folosesc metode specifice de reprezentare a

obiectelor. La proiectarea bazelor de date trebuie să funcţioneze o comunicare

efectivă între cel care proiectează baza de date şi cei care o implementează, cei care o

utilizează, pentru a găsi şi a valida soluţiile alese la proiectare. De cele mai multe ori,

folosirea schemelor este mai sugestivă decât folosirea unor texte explicative.

13

Page 15: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Proiectarea urmăreşte obţinerea unor baze de date care să întrunească

următoarele calităţi:

Corectitudine: reprezentarea cât mai fidelă în baza de date a modului

obişnuit de lucru cu datele în sistemul real.

Consistenţa: informaţiile corespunzătoare obiectelor cu care se lucrează în

baza de date (nume, definire, relaţii, documentare), să nu conţină

contradicţii.

Distribuire: informaţiile să poată fi utilizate de aplicaţii multiple şi să poată

fi accesate de mai mulţi utilizatori, aflaţi în diferite locuri, utilizând medii

de calcul diverse şi acoperind un număr mare de cereri posibile.

Flexibilitatea: facilităţi de adăugare de componente care să reflecte cereri

noi de informaţii, să îmbunătăţească performanţele sau să adapteze datele

pentru eventualele schimbări din lumea reală.

Criteriile de clasificare pentru determinarea modelului logic de date optim

corespunzător unei baze de date sunt:

Validarea structurală: reflectarea consistentă a modului de utilizare a

informaţiilor în lumea reală.

Simplitatea: uşurinţa înţelegerii structurilor chiar de către utilizatori fără o

pregătire specială.

Neredondanţă: eliminarea pe cât posibil a reprezentării de mai multe ori a

aceleiaşi informaţii sau a informaţiilor ce se pot deduce logic din altele.

Extensibilitate: posibilitatea de a dezvolta noi componente cu efecte

minime asupra bazei de date existente.

Integritate: consistenţa în modul de utilizare şi întreţinere ale valorilor din

informaţii.

14

Page 16: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

1.4 Securitatea datelor

După ce o bază de date a fost proiectată şi realizată este de luat în calcul,

securitatea sa. Baza de date trebuie să fie protejată împotriva unei distrugeri logice

(anomalie de actualizare) sau fizice. Pentru aceasta există instrumente care permit:

crearea unor puncte de repriză – altfel spus salvarea din timp în timp a unor

copii coerente ale bazei de date;

gestiunea unui jurnal de tranzacţii – lista operaţiilor realizate asupra bazei

de date după ultimul punct de repriză.

Dacă apare o anomalie care ar putea distruge baza de date, pe baza copiei de la

ultima repriză şi a jurnalului de tranzacţii se poate reface baza de date în forma

iniţială. Protecţia împotriva unei distrugeri fizice se face prin realizarea unei copii a

bazei de date.

Pentru securitatea datelor, se ţine seama deasemenea de confidenţialitatea

datelor.

Confidenţialitatea datelor este asigurată prin proceduri de:

identificare a utilizatorilor prin nume sau cod;

autentificarea prin parole – în acest mod este restricţionat accesul

persoanelor din afară la baza de date;

autorizarea accesului diferenţiat prin drepturi de creare, consultare,

modificare, ştergere pentru anumite segmente de date.

15

Page 17: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

CAPITOLUL 2

2. NIVELURI ŞI MODELE DE REPREZENTARE A DATELOR

ÎN BAZELE DE DATE

2.1 Modelarea logică a datelor

Poate cea mai importantă parte din procesul construirii unei baze de date o

constituie studiul sistemului ce urmează să fie reflectat în baza de date. Stabilirea

informaţiilor relevante pantru sistem şi a relaţiilor dintre ele este un lucru esenţial

pentru etapele următoare.

Baza de date este un model al lumii reale şi nu poate reprezenta decât un număr

limitat de caracteristici în unele aplicaţii. Oricât de perfecţionat ar fi un model utilizat,

există aplicaţii care se pot concepe astfel încât să nu poată fi satisfăcute de baza de

date.

Pentru a construi o bază de date corespunzătoare unui sistem real dat, se face

mai întâi o apreciere generală a sistemului. În această apreciere se include informaţii

privind structura sistemului – elemente esenţiale ale acestuia care sunt cuprinse într-o

schiţă preliminară. Schiţa cuprinde, printre alte informaţii, şi modul în care sistemul

este văzut de diferite persoane implicate în sistemul respectiv. Se crează un model

informaţional în care sunt cuprinse principalele funcţiuni şi fluxuri de informaţii din

sistem. Sistemul trebuie privit unitar şi nu ca o alăturare a componentelor sale. În baza

de date, multe părţi sunt folosite în comun de diferitele componente ale sistemului.

Modelul utilizat frecvent în acest caz se numeşte modelul entitate – relaţie (E -

R) descris de Chen în 1976 şi perfecţionat ulterior. Acest model are drept obiecte

semantice, următoarele:

Entitatea, definită ca un lucru ce poate fi unic identificabil. Se pot deosebi

entităţi obişnuite (regular entities) şi entităţi speciale (weak entities), a

căror existenţă este dependentă de existenţa altor entităţi.

16

Page 18: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Proprietatea sau atributul ce defineşte o latură a entităţii sau relaţiei, care

poate lua valori într-un domeniu asociat. Proprietăţile pot să fie simple sau

compuse, chei (să identifice unic entitatea respectivă), univaloare sau

multivaloare (grup repetitiv), de bază sau derivată, pot fi omise (proprietate

necunoscută sau neaplicabilă) şi aşa mai departe.

Relaţia ce defineşte o asociere între entităţi. Numărul de entităţi ce apar

într-o relaţie se numeşte gradul sau arietatea relaţiei. O entitate E poate să

participe la relaţia R total sau parţial. Relaţiile pot fi de tipul:

Relaţie unu-la-unu (notată 1:1), în cazul în car fiecărui element din prima

entitate îi corespunde cel mult un element din a doua entitate şi reciproc.

Relaţie unu-la mai-mulţi (notată 1:N), în cazul în car fiecărui element al primei

entităţi îi pot corespunde mai multe elemente din cea de-a doua entitate, dar fiecărui

element din a doua entitate îi corespunde cel mult un element din prima entitate.

Relaţie mai-mulţi-la-mai-mulţi (notată M:N), în cazul în care fiecărui element

al primei entităţi îi pot corespunde mai multe elemente din cea de-a doua entitate şi

reciproc.

Subtipul unei entităţi este un tip de entitate ce formează o submulţime a

entităţii respective, de obicei cu proprietăţi suplimentare. Tipul de entitate de care

aparţine un subtip se numeşte supertip. Pentru fiecare entitate în parte se poate stabili

un tip ierarhic prin subordonările de forma subtip şi supertip.

17

Page 19: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

2.2 Modelul relaţional de baze de date

Un model relaţional de baze de date cuprinde trei componente principale:

- Structura datelor prin definirea unor domenii şi a relaţiilor n-are (atribute, tupluri,

chei primare, etc.).

- Integritatea datelor prin impunerea unor restricţii.

- Prelucrarea datelor prin operaţii din algebra relaţională sau calculul relaţional.

Modelul relaţional se bazează pe noţiunea matematică de relaţie, aşa cum este

definită în teoria mulţimilor, şi anume ca o submulţime a produsului cartezian a unei

liste finite de mulţimi numite domenii. Elementele unei relaţii se numesc tupluri, iar

numărul de domenii din produsul cartezian se numeşte arietatea relaţiei. De obicei

relaţiile sunt reprezentate sub forma unor tabele în care fiecare rând reprezintă un

tuplu şi fiecare coloană reprezintă valorile tuplurilor dintr-un domeniu dat al

produsului cartezian.

În reprezentarea sub formă de tabel a unei relaţii, coloanelor şi respectiv

domeniilor corespunzătoare lor li se asociază nume intitulate atribute. Mulţimea

numelor atributelor unei relaţii se numeşte schemă relaţională. Dacă relaţia are

atributele atunci schema relaţională se notează .

Un alt mod de a defini relaţiile este următorul: prin relaţie înţelegem o mulţime

de funcţii definite pe o mulţime de atribute cu valori în reuniunea unor domenii, cu

resticţia ca valoarea corespunzătoare fiecărui atribut să se reflecte în domeniul asociat

acelui atribut.

Trecerea de la un mod de definire al relaţiei la celălalt se face relativ simplu. O

relaţie în sensul de mulţime se transformă într-o relaţie în sensul de funcţii, asociind

fiecărui domeniu al produsului cartezian câte un nume de atribut

şi definind pentru fiecare tuplu funcţia cu

. Trecerea inversă se face impunând o relaţie de ordine totală pe

18

Page 20: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

mulţimea atributelor şi asociind fiecărei funcţii tuplul obţinut din valorile funcţiei

respective, în ordinea corespunzătoare a atributelor.

Din punct de vedere al bazelor de date, cea de-a doua definiţie este de preferat,

deoarece permite prelucrarea informaţiilor corespunzătoare unui atribut fără a

cunoaşte poziţia acelui atribut în relaţie. Aceasta asigură o mai mare independenţă de

reprezentare a datelor, atât la nivel logic, cât şi la nivel fizic, putându-se efectua

modificări în definirea structurilor fără afectarea altor nivele. Pentru relaţiile ce

constituie o bază de date se fac diferite presupuneri iniţiale cum ar fi: neexistenţa unor

tupluri duplicate, neapariţia într-o ordine dată a tuplurilor sau a atributelor,

posibilitatea ca toate atributele să aibă numai valori atomice (nedecompozabile) şi

altele.

Se numeşte candidat de cheie a unei relaţii R coloana sau mulţimea de coloane

din R pentru care valorile corespunzătoare din oricare două tupluri nu coincid, deci

identifică tuplurile din cheia respectivă, şi nu conţin strict o submulţime de coloane cu

această proprietate. Pentru fiecare relaţie se alege un candidat de cheie care se

numeşte cheie primară a relaţiei. Tuplurile unei relaţii nu pot să conţină valoarea nulă

în coloanele ce aparţin cheii primare. Eventualii candidaţi de cheie diferiţi de cheia

primară se numesc chei alternative. Se numeşte cheie străină o coloană sau o mulţime

de coloane a unei relaţii ale cărei (căror) valori dacă nu sunt nule, coincid cu valori

ale unei chei primare dintr-o relaţie neapărat distinctă de .

Mulţimea tuturor schemelor relaţionale corespunzătoare unei aplicaţii se

numeşte schema bazei de date relaţionale, iar conţinutul curent al relaţiei la un

moment dat se numeşte bază de date relaţională. În modelul relaţional, entităţile sunt

reprezentate sub formă de relaţii în care schema relaţională conţine toate atributele

entităţii şi fiecare tuplu corespunde unui element al entităţii. La atributele entităţii se

pot adăuga în relaţie şi eventuale atribute suplimentare utilizate pentru exprimarea

relaţiilor între entităţi. O relaţie între entităţile se reprezintă ca o relaţie

19

Page 21: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

în care fiecare tuplu este un element al relaţiei iniţiale, fiind o cheie

pentru relaţia asociată.

Cele mai multe cereri privesc determinarea unor informaţii cu anumite

proprietăţi, iar răspunsul posibil este o relaţie care descrie toate elementele cu aceste

proprietăţi. Modul de reprezentare al răspunsului depinde de interfaţa dintre SGBD şi

utilizator.

Prelucrarea relaţiilor se face prin algebra relaţională sau calculul relaţional pe

tupluri sau domeniu.Operatorii relaţionali se pot grupa în operatori de bază, care pot

genera toată clasa operatorilor relaţionali şi operatori auxiliari. Operatorii relaţionali

de bază se împart în operatori de asamblare şi operatori unari.

Operatorii de asamblare sunt operatorii care primesc la intrare două relaţii şi

generează la ieşire una singură. Aceştia sunt: reuniunea, diferenţa, produsul cartezian.

Operatorii unari se aplică asupra unei relaţii şi generează o altă relaţie. Aceştia

sunt proiecţia şi selecţia.

Operatorii auxiliari pot fi deduşi din setul de operatori de bază. Aceştia sunt

compunerea, intersecţia şi împărţirea.

20

Page 22: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

2.3 Modelul conceptual de baze de date

Nivelul conceptual este nivelul central care reflectă datele structurate astfel

încât acestea să poată fi preluate şi prelucrate cu ajutorul unui SGBD. Schema

conceptuală stă la baza modelului conceptual care va permite definirea proprietăţilor

elementare ale obiectelor care interesează.

Modelul conceptual al bazei de date este reprezentat grafic prin diagrame,

entitate – relaţie. În aceste diagrame, entităţile sunt reprezentate sub formă de

dreptunghiuri ce conţin numele entităţii respective. Proprietăţile sunt reprezentate prin

elipse ce conţin numele entităţii respective, unite cu linii de entităţile la care sunt

asociate. Elipsa se desenează punctat dacă proprietatea este derivată şi dublat dacă

este multivaloare. Proprietăţile compuse au ataşate componentele lor, reprezentate tot

sub formă de elipse. Cheile sunt subliniate. Relaţiile sunt reprezentate sub formă de

romburi etichetate cu numele tipului relaţiei respective. Rombul se dublează dacă

relaţia indică legătura între o entitate specială şi entitatea de care depinde ea. Relaţia

este unită prin linii cu entităţile ce apar în ea, etichetate cu “one” sau “many” după

caz. Linia se dublează dacă participarea în relaţie a entităţii este totală. Orice subtip Y

al lui X se marchează cu o linie de la Y la X pe care se pune semnul de incluziune de

mulţimi (a lui Y în X).

În proiectarea bazei de date la nivel conceptual, se pot utiliza mai multe

modele, dintre care cel mai utilizat este modelul Entitate-Atribut-Corespondenţă.

O corespondenţă sau asociere reprezintă o legătură logică între două sau mai

multe realizări de entităţi. La nivelul limbajulul natural, este definită printr-un verb.

O corespondenţă poate avea proprietăţi particulare, date de atribute specifice.

O realizare a unei entităţi se numeşte mulţimea formată din câte o valoare pentru

fiecare atribut al relaţiei.

Valorile fiecărui atribut component a ceea ce numim entitate alcătuiesc o

realizare a entităţii respective.

21

Page 23: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Spunem că există o dependenţă funcţională între două atribute când unei valori

a unei proprietăţi îi corespunde o singură valoare a altei proprietăţi.

Identificatorul unei entităţi este atributul a cărui realizare caracterizează în

mod unic a realizare a entităţii. În reprezentarea grafică, identificatorul se subliniază

cu o linie continuă.

Mulţimea entităţilor care participă la asociere formează colecţia acesteia;

numărul acestora dă gradul sau dimensiunea asocierii.

22

Page 24: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

2.4 Reguli de verificare şi normalizare

a Modelării Conceptuale a Datelor (MCD)

2.4.1 Restricţii de integritate şi reguli de verificare a MCD

Restricţiile de integritate sunt reguli suplimentare, nereprezentabile direct în

formalismul EA (Entitate – Asociere), care trebuie respectate permanent de date.

Acestea pot fi statice, condiţii care se verifică permanent, şi dinamice, care privesc

evoluţia în timp a datelor.

Realizarea MCD impune respectarea următoarelor reguli:

Regula de unicitate a numelor se aplică tuturor elementelor care participă la

definirea MCD: tipuri de entităţi, tipuri de asocieri, atribute, roluri. Această

regulă impune eliminarea din model a omonimelor şi sinonimelor. Aceasta

înseamnă că nu vom putea da, în cadrul aceluiaşi MCD, şi unui atribut şi unui

tip de entitate acelaşi nume, de exemplu Producător. Vom numi tipul de

entitate Producător, iar atributul va primi denimirea Nume Producător.

Regula unicităţii atributelor (neredondanţei) impune ca un atribut să

definească un singur tip de entitate sau un singur tip de asociere.

Regula de unicitate a asocierilor, aplicabilă în cazul asocierilor neierarhice,

specifică faptul că pentru fiecare realizare a asocierii nu poate să existe decât o

singură realizare a fiecărei entităţi participante la asociere.

Regula proprietăţilor şi determinantului unei entităţi precizează că un atribut

care este determinat de mai mulţi determinanţi, aceştia fiind identificatori ai

unor tipuri de entităţi diferite, trebuie să definească tipul de asociere creat între

respectivele tipuri de entităţi.

Regula atributelor derivabile recomandă evitarea includerii în MCD a

atributelor rezultate din calcule. Prezenţa unor astfel de atribute în MCD se

justifică numai dacă ele sunt purtătoare ale unei informaţii cu o anumită

relevanţă şi frecvenţă de utilizare.

23

Page 25: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Regula atributelor decompozabile precizează că pot fi menţinute în cadrul

MCD atribute complexe în măsura în care prelucrările nu impun

descompunerea lor pe componente elementare.

Regula minimizării identificatorilor specifică necesitatea stabilirii cu atenţie a

identificatorilor entităţilor, reţinând în grupul de atribute un număr cât mai mic

de elemente (atribute).

Regula valorii NULL. Deoarece există definite în cadrul tipurilor de entităţi

atribute care nu prezintă realizări obligatorii la nivelul fiecărei entităţi, rezultă

că MCD poate fi rafinat prin definirea unor subtipuri de entităţi care să

cuprindă doar atributele specifice acelei submulţimi de entităţi. Atributele cu

rol de identificator vor trebui să primească obligatoriu realizări.

2.4.2. Dependenţe funcţionale

Dependenţe funcţionale simple

Între două atribute A şi B există o dependenţă funcţională notată

A B

dacă fiecărei valori a lui A îi corespunde o singură valoare a lui B.

Spre exemlu, pentru un CD se poate defini următoarea dependenţă funcţională:

Cod_CD Nr_CD

care exprimă faptul că unui CD (identificat printr-un cod), îi corespunde un singur

număr care îi identifică tipul. Relaţia inversă:

Nr_CD Cod_CD

nu este adevărată, deoarece pot exista mai multe CD-uri cu acelaşi număr deţinut în

cadrul codului, dar cu coduri diferite.

Atributul aflat în stânga dependenţei funcţionale este numit determinant.

Determinantul poate fi compus din unul sau mai multe atribute.

O dependenţă funcţională X Z este elementară dacă pentru orice X’ strict

inclus în X, dependenţa funcţională X’ Y nu este adevărată.

24

Page 26: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Dependenţe funcţionale multivaloare

Între două atribute A şi B există o dependenţă funcţională multivaloare, notată:

A B

dacă o valoare a lui A determină un ansamblu de valori al lui B.

Considerăm E în care A, B sun atribute/grupuri de atribute aparţinând acestuia

iar C = E – (A B),

A B dacă:

- A determină mai mute valori pentru B;

- A determină mai mute valori pentru C;

- B şi C sunt idependente unul faţă de celălalt.

În alţi termeni, dacă A B, atunci A C.

Dependenţa funcţională este un caz particular al dependenţei multivaloare.

Dacă A B atunci A B.

În contextul modelului EA, dependenţa funcţională multivaloare, corespunde

existenţei atributelor repetitive sau multivaloare.

Dependenţele funcţionale reprezintă restricţii de intergritate.

Identificatorul unei entităţi este un atribut sau un grup de atribute faţă de care

toate celelalte atribute depind funcţional.

Dependenţele funcţionale pot exista şi între entităţi şi asocieri.

Cardinalităţile 1,1 corespund întotdeauna unor dependenţe funcţionale.

2.4.3 Normalizarea

Normalizarea este considerată o parte importantă a procesului de proiectare a

datelor. Modelul EA (entitate – asociere) este rezultatul unui proces iterativ care a

permis identificarea tipurilor de entităţi, atributelor definite în cadrul acestora, a

identificatorilor şi a asocierilor. Normalizarea vizează atributele entităţilor pe care le

25

Page 27: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

analizează cu scopul eliminării anomaliilor manifestate în procesul actualizării,

asigurându-se astfel definirea unor tipuri de entităţi „libere” de dependenţe

funcţionale tranzitive şi multivaloare. De asemenea, se elimină redondanţele fără

pierdere de informaţie semnificativă.

Teoria normalizării este fundamentată pe conceptul de formă normală definită

drept un stadiu de optimizare a tipurilor de entităţi definite. Normalizarea se

realizează prin parcurgerea succesivă a mai multor forma normale (FN), fiecare dintre

acestea conservând cerinţele formulate de FN precedentă.

Conceptul de formă normală a fost introdus de CODD când acesta a definit

conceptele specifice bazei de date relaţionale. El a definit primele trei forme normale.

Ideea fundamentală de la care a pornit era de a arăta avantajul respectării cerinţelor

FN3 în raport cu două criterii esenţiale: minimizarea redundanţelor şi minimizarea

anomaliilor în operaţiile de actualizare.

Ulterior au fost definite şi alte forma normale. Aceste forme normale operau

asupra structurii tabelelor bazei de date, deci pe nivelul logic al datelor. În timp s-a

conturat necesitatea realizării procesului de optimizare mai devreme, în cadrul

modelării conceptuale a datelor prin definirea unor reguli de normalizare a căror

definiţie pleacă de la chiar regulile lui CODD. Se reuşeşte astfel ca în momentul

definirii modelului logic al datelor, tabelele să respecte deja cerinţele formalor

normale.

Procesul normalizării se poate desfăşura urmând una din următoarele abordări:

Varianta „top down” caracterizată prin urmărirea respectării formelor normale

la nivelul entităţilor;

Varianta „bottom up” caracterizată prin definirea unui tip de entitate unic

înglobând toate atributele modelului EA la nivelul căruia să se identifice

mulţimea dependenţelor funcţionale existente între ele.

Anomaliile se pot manifesta în procesul actualizării în cursul operaţiilor de

adăugare, ştergere şi modificare.

26

Page 28: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Anomalia de inserare (adăugare) constă în faptul că anumite date care urmează

să fie adăugate, fac parte din tupluri incomplete (pentru care nu se cunosc datele),

ceea ce face ca acestea să nu poată fi adăugate.

Anomalia de ştergere constă în faptul că anumite date care urmează să fie

şterse, fac parte din tupluri în care se găsesc şi alte date care mai sunt necesare în

continuare, iar ştergerea făcându-se la nivelul tuplului, acestea se pierd.

Anomalia de modificare rezultă din faptul că este dificil de modificat o valoare

a unui atribut atunci când ea apare în mai multe tupluri ale relaţiei.

Formele normale sunt următoarele:

FN1: O entitate este în FN1, dacă toate atributele sale sunt elementare şi

nerepetitive.

FN2: O entitate este în FN2, dacă respectă cerinţele FN1 şi toate atributele

non-identificator sunt dependente de întregul identificator.

Altfel spus, în toate realizările tipului de entitate, fiecare atribut trebuie să fie

determinat de identificator şi trebuie să ia o singură valoare şi numai una. Dacă o

entitate analizată prezintă un identificator (cheie) format dintr-un singur atribut, este

automat în FN2.

FN3: O entitate este în FN3, dacă este în FN2 şi orice atribut non-

identificator, nu are dependenţe tranzitive faţă de identificator.

FNBC (BOYCE-CODD): O entitate este în FNBC dacă este în FN3 şi nici

un atribut ce compune identificatorul nu depinde funcţional de un alt atribut.

FN4: O entitate este în FN4, dacă respectă cerinţele FNBC şi nu prezintă

dependenţe multivaloare.

Normalizarea entităţilor

Normalizarea are drept scop eliminarea redondanţelor şi a anomaliilor de

actualizare. Deoarece prin cele menţionate anterior se elimină o parte dintre cazurile

de nerespectare a condiţiilor de normalizare, este necesaă să se asigure o atenţie

deosebită următoarelor situaţii:

27

Page 29: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

a) existenţa dependenţelor funcţionale tranzitive între atribute;

b) existenţa de dependenţe funcţionale parţiale între atributele

neidentificatoare şi identificator (atunci când acesta eate compus din mai

multe atribute).

Normalizarea asocierilor

Situaţia este similară entităţilor, cu observaţia că pentru asocieri nu există

identificatori proprii, rolul acestora fiind îndeplinit de identificatorii entităţilor

participante.

1 1

N

1 N N N 1

Figura 2.1 Schema iniţială ( înainte de normalizare)

Pentru a nu exista nici una din anomaliile prezentate, schema iniţială al

aplicaţiei de baze de date pentru gestionarea unei biblioteci de CD-uri a fost supusă

procesului de normalizare. După ce această operaţiune a fost realizată schema finală

va arăta ca în figura următoare:

CD

COD_CDNUME CDNR_CDANAP_CDID_PRODNUME ARTISTCOD_REG

PRODUCATORID_PRODFIRMA PRODNUME PRODPRENUME PRODNUME CD

TIPNR_CDDENUMIRE CD

REGIZORCOD_REGNUME REGPRENUME REGNUME FILMCOMPANIA PROD

ARTISTNUME ARTISTNUME ALBUMGEN MUZICANR ALBUME ÎNREG

28

Page 30: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

N

1

1 1 1 1 N N

1 1 1

N

Figura 2.2 Schema finală (după normalizare)

REGIZORCOD_REGNUME REGPRENUME REGNUME FILMCOMPANIA PRODCOD_CDFILM

ARTISTNUME ARTISTNUME ALBUMGEN MUZICANR ALBUME ÎNREGCOD_CDM

CDCOD_CDNUME CDNR_CDANAP_CDID_PROD

TIPNR_CDDENUMIRE CD

PRODUCATORID_PRODNUME PRODPRENUME PRODFIRMA PRODNUME CD

FILMCOD_CDFILMNUME FILMGEN FILMDURATA FILMNR DE CD-URI

MUZICACOD_CDMNUME ALBUMNUME ARTIST

29

Page 31: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

CAPITOLUL 3

3. DESCRIEREA APLICAŢIEI

În vederea facilitării modului în care se creează o aplicaţie în Microsoft

ACCESS 2000, vom folosi un studiu de caz practic. Se va încerca prezentarea pe

scurt, a aplicaţiei ce va fi realizată.

Pentru aceasta, vom alege proiectarea unui sistem de gestionare a unor CD-uri

multimedia, deci se doreşte realizarea unui sistem informatic de evidenţă a CD-urilor

dintr-o bibliotecă de CD-uri.

Baza de date ce urmează a fi construită va conţine informaţii despre CD-urile

ce conţin filme, jocuri, muzică şi produse soft. În cadrul acestui sistem informatic se

vor evidenţia tipul CD-urilor, CD-urile propriuzise, producătorii unui CD, CD-urile ce

conţin filme şi regizorii care au creat un film, CD-urile care conţin muzică, respectiv

informaţii despre artiştii reprezentaţi de cântăreţi sau formaţii – interpreţi ai unui

anumit CD.

Vom obţine aşadar, următoarele tabele: CD, PRODUCATOR, TIP, FILM,

REGIZOR, MUZICA şi ARTIST.

Entitatea CD va deţine informaţii ce se referă la toate tipurile de CD-uri, iar din

entitatea TIP vom extrage informaţiile referitoare la tipul unui CD, adică film, joc,

muzică sau soft. Nr_CD va fi un câmp ce conţine o cifră, cifră folosită în codul unui

CD pentru ca acesta să poată fi identificat. Spre exemplu, cu cifra 1 vor începe

codurile CD-urilor care conţin exclusiv filme. De remarcat că un anumit tip poate

aparţine mai multor CD-uri, dar un CD poate avea doar un tip: film, joc, muzică sau

soft.

30

Page 32: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Tabela FILM, va conţine CD-uri cu filme. Observăm că un film poate fi deţinut

pe mai multe CD-uri, dar un CD poate conţine maxim un film. Entitatea REGIZOR va

deţine informaţii legate de regizorii unui film.

În entitatea PRODUCATOR vom stoca informaţiile legate de un producător,

adică persoana care a produs fie un film, fie un joc, un album muzical sau un produs

soft.

Tabela MUZICA va conţine CD-urile de muzică, iar în entitatea ARTIST vom

introduce informaţii despre un cântăreţ sau o formaţie care interpretează muzica de pe

albumul respectiv, informaţii precum casa de discuri care a lansat albumul sau

numărul de albume înregistrate de artist în întreaga sa carieră muzicală.

După cum am menţionat şi mai sus, aplicaţia va fi realizată folosind Microsoft

ACCESS. Se vor realiza tabelele, legăturile dintre ele, se vor crea rapoarte, interogări

asupra bazei de date pentru a obţine informaţiile dorite, a adăuga date sau pentru a

actualiza sau şterge o tabelă. La crearea interogărilor se va folosi şi SQL, un limbaj

încorporat în ACCESS, folosit la scrierea instrucţiunilor dorite pentru obţinerea

datelor dorite. Deasemenea vom crea formulare şi macrocomenzi. Se observă faptul

că la unele formulare, adăugând anumite butoane prin folositea instrumentului

Toolbox, folosim implicit şi ACCESS VBA (Visual Basic for Applications). Mai

explicit, aceste instrumente folosite au „agăţate” în spatele lor, mici fragmente de

program în limbajul VBA.

Microsoft ACCESS reprezintă un instrument foarte simplu şi eficace, la

îndemâna oricărui utilizator care fără prea multe cunoştinţe poate implementa şi

utiliza o bază de date. Fiind parte componentă a pachetului OFFICE 2000, acesta

oferă posibilitatea comunicării cu celelalte programe: Word, Excel şi PowerPoint. Tot

aici se prezintă limbajul SQL (Structured Query Linguage), care reprezintă un

standard în ceea ce priveşte interogarea bazei de date.

31

Page 33: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

CAPITOLUL 4

4. PREZENTARE MICROSOFT ACCESS – REALIZAREA APLICAŢIEI

4.1 Prezentare Generală Microsoft ACCESS 2000

Microsoft ACCESS 2000 face parte din pachetul de programe Microsoft Office

şi este cea de-a cincea versiune a produsului de la lansarea sa iniţială în anul 1992.

Microsoft a vândut peste 75 milioane de copii ale produsului Microsoft Office (din

toate versiunile), din care peste 45 milioane sunt exemplare ale produsului Office 97.

Cum o parte din vânzările produsului Microsoft Office sunt reprezentate de vânzarea

produsului Microsoft Access, se poate afirma că produsul Access este cel mai popular

sistem de gestionare a bazelor de date cu aplicaţie pe PC-uri.

La începutul lunii iunie 1999 a fost lansată versiunea finală a produsului

Microsoft Office 2000. Acesta reprezintă o variantă îmbunătăţită a produsului

Microsoft Office 97 şi continuă totodată tendinţa de monopol a firmei Microsoft.

Astfel, pe lângă componentele tradiţionale ale pachetului Office: Word, Excel,

PowerPoint, odată cu versiunea 2000 au fost introduse următoarele componente:

Publisher, pentru realizarea unei aplicaţii; FrontPage, pentru crearea paginilor Web;

PhotoDraw, Pentru editarea imaginilor; Small Business Tools, pentru gestionarea

afacerilor mici.

Principalele caracteristici ale sistemului de gestiune a bazelor de date ACCESS

sunt:

Sistemul de gestiune a bazelor de date este relaţional şi lucrează sub sistemul

de operare Windows;

Este deschis comunicării cu alte sisteme de gestiune a bazelor de date;

Este compatibil cu tehnologia ActiveX care permite realizarea aplicaţiilor

client/server;

32

Page 34: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Permite realizarea unor aplicaţii complexe prin utilizarea limbajului Visual

Basic;

Permite comunicarea cu SQL Server, un alt produs Microsoft care gestionează

baze de date;

Permite accesul la baze de date din reţeaua Internet, fiind un instrument util

pentru publicarea informaţiilor în paginile Web;

Cerinţele hardware pentru instalare sunt: un calculator Pentium cu 32 MB

RAM, 200 MB spaţiu pe HD;

Este autodocumentat prin help, apelabil contextual sau la cerere;

Conţine instrumente wizard care permit utilizatorului crearea facilă a unor

obiecte;

Acceptă nume lungi în definirea fişierelor;

Permite crearea de comenzi rapide în vederea accesării obiectelor ACCESS;

Permite crearea de grupuri de obiecte definite de utilizator în cadrul bazei de

date;

Permite setarea proprietăţilor iniţiale ale bazei de date cum ar fi titlul aplicaţiei,

ataşarea de pictograme (icons), precum şi forma de afişare iniţială;

Oferă posibilitatea creării unei copii a bazei de date şi, prin utilizarea aplicaţiei

Briefcase, realizarea sincronizării între diferitele copii ale bazei de date;

Permite utilizarea instrumentului wizard în vederea creării a mai mult de 20 de

tipuri comune de aplicaţii;

Permite utilizarea obiectelor ACCESS din cadrul altor aplicaţii rulate sub

sistemul de operare Windows;

Permite utilizarea de adrese şi legături Internet;

Are integrată facilitatea de Office Assistant (help animat).

Însuşirea cunoştinţelor privind realizarea unei aplicaţii în ACCESS 2000 nu

este posibilă fără ca cititorul să aibă acces la un calculator pe care să fie instalat acest

sistem de gestiune a bazelor de date. În cadrul versiunii 2000 a SGBD-ului ACCESS

au fost introduse o serie de facilităţi noi cum ar fi:

33

Page 35: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Iterfaţa grafică a fost modificată, fiind mai atractivă şi mai uşor de utilizat;

Se pemite publicarea datelor în cadrul unei reţele Intranet sau pe Internet prin

pagini HTML dinamice;

Pe baza facilităţii de compactare,minimizează dimensiunea bazei de date la

închidere;

Permite crearea de aplicaţii care să utilizeze baze de date stocate în SQL

Server, în cadrul unei reţele de calculatoare.

4.1.1 Arhitectura Microsoft ACCESS

O bază de date ACCESS poate fi definită ca o colecţie de obiecte: tabele

(table), cereri de interogare (query), formulare (form), rapoarte (report), paginiWeb

(pages), comenzi macro (macro) şi module (module).

Trebuie subliniată diferenţa majoră care există între Microsoft ACCESS şi alte

sisteme de gestiune a bazelor de date. Astfel, în Visual FoxPro, prin baze de date

(database), se înţeleg doar acele fişiere în care sunt stocate datele.

Tabele (Table) este un obiect definit de utilizator în care sunt stocate datele

primare (expresia modelului raţional).

Formularul (Form) este un obiect care permite introducerea datelor, afişarea

acestora sau controlul întregii aplicaţii.

Cerere de interogare (Query) este un obiect care permite vizualizarea

informaţiilor obţinute prin prelucrarea datelor din una sau mai multe tabele şi/sau alte

cereri de interogare.

Raportul (Report) este un obiect care permite formatarea şi tipărirea

informaţiilor obţinute în urma consultării bazei de date sub formă de document.

Pagină Web de accesare a datelor (Pages) reprezintă un obiect care include

un fişier HTML şi alte fişiere suport în vederea furnizării accesului la date prin

intermediul browser-elor Internet.

34

Page 36: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Comanda Macro (Macro) reprezintă un obiect care conţine o definiţie

structurală a uneia sau mai multor acţiuni pe care ACCESS le realizează ca răspuns la

un anumit eveniment.

Modulul (Module) reprezintă un obiect care conţine proceduri definite de

utilizator şi scrise în limbajul de programare Visual Basic.

4.1.2 Instrumentul Wizard

Pentru a facilita realizarea de aplicaţii în Microsoft ACCESS, au fost introduse

instrumentele de ajutor wizards, care pot fi clasificate în două categorii: generale şi

orientate obiect.

Rolul acestor instrumente este de a realiza în mod automat o bază de date sau

un anumit obiect (tabel, formular, cerere de interogare, raport), luând în considerare

anumite preferinţe ale utilizatorului.

În cadrul istrumentalor wizard generale, Microsoft ACCESS conţine un număr

de probleme pentru rezolvarea cărora aplicaţiile pot fi generate automat prin utilizarea

unor şabloane, fiind create toate obiectele necesare pe baza anumitor preferinţe ale

utilizatorului.

Un exemplu în acest sens este baza de date privind contractele de afaceri

(Contract Management). Această bază de date poate fi generată automat de către

Microsoft ACCESS pe baza specificării anumitor preferinţe ale utilizatorului.

Utilizarea instrumentelor wizard este recomandată în special în cazul creării

formularelor sau rapoartelor.

35

Page 37: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.1.3 Crearea unei baze de date

La pornire, SGBD ACCESS afişează pe ecran, dacă se doreşte construirea unei

baze de date sau deschiderea uneia existente deja, ca în figura 4.1:

Figura 4.1. Fereastra principală Microsoft ACCESS

Vom construi o bază de date nouă pe care o vom numi „Bază date CD.mdb”.

Pentru aceasta:

În fereastra principală se selectează Blank Access database şi se

activează butonul <OK>.

În fereastra de dialog (figura 4.2) se introduce numele bazei de date şi se

activează butonul <Create>, care va afişa rezultatul (figura 4.3).

36

Page 38: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.2. Fereastra File New Database

Figura 4.3. Fereastra Database

37

Page 39: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.1.4 Deschiderea unei baze de date deja existente

Dacă se doreşte modificarea sau consultarea unei baze de date creată anterior,

aceasta trebuie mai întăi deschisă. În fereastra principală se selectează Open an

existing file şi se activesză butonul <OK> care va deschide o nouă fereastră de dialog

Open asemănătoare cu fereastra de dialog File New Database în care se selectează

baza de date ce se doreşte a fi modificată.

4.1.5 Salvarea modificărilor aduse unei baze de date

Prin modificarea unei baze de date ACCESS se înţelege modificarea obiectelor

ce o compun. Modificarea unui obiect va atrage după sine o întrebare din partea

sistemului – dacă această modificare va fi salvată sau nu. În concluzie, orice

modificare a obiectelor se salvează local nefiind necesară salvarea întregii baze de

date.

38

Page 40: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.2 Crearea structurii bazei de date

4.2.1 Modelul conceptual al datelor

În urma analizei problemei rezultă următoarele entităţi: TIP, CD,

PRODUCATOR, FILM, REGIZOR, MUZICA şi ARTIST.

Identificarea corespondenţelor:

TIPUL – CD

Un tip poate aparţine unui CD sau poate aparţine la n CD-uri, de unde rezultă

corespondenţa APARTINE.

PRODUCATOR – CD

Un producător poate produce de-a lungul carierei unul sau mai multe CD-uri

(film, joc, soft sau muzică) de unde rezultă corespondenţa PRODUCE.

CD – FILM

Un CD conţine un film, de unde rezultă corespondenţa CONŢINE.

FILM – REGIZOR

Un film este regizat de un regizor, de unde rezultă corespondenţa

REGIZEAZĂ.

CD – MUZICA

Un CD mai poate deţine muzică, de unde rezultă corespondenţa DEŢINE.

MUZICA – ARTIST

Muzica de pe un CD este interpretată de un cântăreţ/cântăreaţă respectiv

formaţie, de unde rezultă corespondenţa INTERPRETEAZĂ.

39

Page 41: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Stabilirea cardinalităţilor:

Corespondenţa APARTINE

o dinspre entitatea TIPUL (1,n)

un tip poate aparţine cel puţin unui CD (cardinalitate 1);

un tip poate aparţine mai multor CD-uri (cardinalitate n);

o dinspre entitatea CD (1,1)

un CD poate avea cel puţin şi cel mult un tip (cardinalitate 1,1);

Corespondenţa PRODUCE

o dinspre entitatea PRODUCATOR (1,n)

un producător poate produce cel puţin un film de-a lungul

carierei (cardinalitate 1);

un producător poate produce n filme(cardinalitate n);

o dinspre entitatea CD (1,1)

un CD este produs de cel puţin şi cel mult un producător

(cardinalitate 1);

Corespondenţa CONŢINE

o dinspre entitatea CD (1,1)

un CD poate conţine cel puţin şi cel mult un film (cardinalitate

1);

o dinspre entitatea FILM (1,n)

un film poate fi conţinut pe un CD (cardinalitate 1);

un film poate fi conţinut pe n CD-uri (cardinalitate n);

Corespondenţa REGIZAT

o dinspre entitatea FILM(1,1)

un film de cel puţin şi cel mult un regizor (cardinalitate 1);

o dinspre entitatea REGIZOR (1,n)

un regizor poate regiza de-a lungul carierei cel puţin un film

(cardinalitate 1);

40

Page 42: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

un regizor poate regiza de-a lungul carierei n filme

(cardinalitate n).

Corespondenţa DEŢINE

o dinspre entitatea CD (1,1)

un CD poate conţine cel puţin şi cel mult un album de muzică

(cardinalitate 1);

o dinspre entitatea MUZICA (1,1)

un album de muzică poate fi conţinut cel puţin şi cel mult un

CD (cardinalitate 1);

Corespondenţa INTERPRETATĂ

o dinspre entitatea MUZICA (1,1)

un album de muzică poate fi interpretat de cel puţin şi cel mult

un cântăreţ/cântăreaţă/ formaţie (cardinalitate 1);

o dinspre entitatea ARTIST (1,n)

un album artist poate lansa de-a lungul carierei cel puţin un

album (cardinalitate 1);

un album artist poate lansa de-a lungul carierei n albume

(cardinalitate n).

ID_PROD

41

Page 43: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

1,N

1,N 1,1 1,1

1,1 1,1

1,1 1,N

1,1 1,1

1,N 1,N

Figura 4.4. Modelul conceptual al datelor

4.2.2 Modelul relaţional al datelor

TIP (Nr_CD, Denumire)

CD (Cod_CD, Nume CD, Nr_CD, AnAp_CD, ID_Prod)

PRODUCATOR (ID_Prod, Nume Prod, Prenume Prod, Firma Prod, Nume CD)

FILM (Cod_CDFilm, Nume Film, Gen Film, Durata Film, Nr de CD-uri)

REGIZOR (Cod_Reg, Nume Reg, Prenume Reg, Nume Film, Compania Prod,

Cod_CDFilm)

MUZICA (Cod_CDM, Nume Album, Nume Artist)

ARTIST (Nume Artist, Nume Album, Tip Muzică, Nr Albume Înreg,

Casa Discuri,Cod_CDM)

În figura 4.5 se prezintă transformarea modelelor conceptual şi relaţional într-o

bază de date ACCESS – modelul fizic al datelor (nivelul intern).

TIP

CD

PRODUCATORPRODUC

EAPARTIN

E

REGIZAT

REGIZOR

TIP_CDCOD_CD

COD_REG

MUZICA

DETIN

E

ARTIST

INTERPRETATĂ

FILM

CON

ŢINE COD_CD

FCOD_CDM

NUME ARTIST

42

Page 44: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.5. Fereastra Relationships

Nivelul intern (modelul fizic) este cel ce corespunde structurii în care sunt

stocate datele în interiorul maşinii. Sunt specificate tabelele (fişierele), care le conţin

(nume, organizare, localizare), componentele fiecărui fişier (lungime, câmpuri,

plasare a acestora în cadrul fişierului), căile de acces la componentele tabelelor

(relaţii, legături între tabele).

În cadrul ferestrei Relationships, pentru a descrie procesul de construire a

relaţiilor dintre tabele, folosim operaţia drug and drop, de la cheia primară a tabelei

principale la cheia externă a tabelei secundare.

De exemplu pentru a crea relaţia între tabelele FILM şi REGIZOR. În

fereastra Edit Relationships, dacă selectăm proprietatea Enforce Referencial Integrity

(impune integritate referenţială) în cadrul aplicaţiei, aceasta înseamnă că datele nu pot

fi introduse în tabele în orice ordine.

43

Page 45: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.6. Fereastra Edit Relationships

4.2.3 Crearea tabelelor

Crearea structurii tabelelor se poate face în trei moduri:

1. Utilizând fereastra de proiectare – Create table in design view;

2. Prin introducerea datelor – Create table by entering data;

3. Utilizând instrumentul Wizard – Create table by using wizard.

Crearea unui tabel utilizând instrumentul wizard permite adăugarea unor

câmpuri standard ce se află deja în cadrul bibliotecilor de tabele standard. Crearea de

tabele prin introducerea de date reprezintă o formă rapidă de a introduce datele. Ea nu

poate fi aplicată eficient în cadrul unei aplicaţii complexe.

Pentru crearea unui tabel utilizând fereastra de proiectare, prin realizarea unui

dublu clic pe Create table in design view pe ecran va apărea fereastra Table (figura

4.7). În cadrul acestei ferestre se definesc numele câmpului (Field Name), tipul de

date (Data Type) şi, opţional, o descriere a câmpului respectiv (Description).

Utilizând fereastra de proiectare, vom crea tabelele necesare aplicaţiei de

evidenţă a CD-urilor. În figura 4.8 este prezentată tabela CD, în faza de proiectare,

44

Page 46: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

unde sunt precizate câmpurile, tipul datelor folosite pentru definirea câmpurilor, şi

deasemenea o descriere a câmpurilor respective.

Figura 4.7. Fereastra Table

Figura 4.8. Tabela CD

45

Page 47: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.2.4 Tipuri de date

Executarea unui clic pe săgeata derulantă deschide lista opţiunilor privind tipul

de dată al unui câmp.

Dimensiunea câmpului (Field Size). Putem crea un câmp de tip Text cu

dimensiune fixă stabilind valoarea proprietăţii Field Size. În mod prestabilit, ACCESS

creează un câmp de tip text care poate cuprinde 50 de caractere.

Formatul de afişare a datelor (Format). O dată de tip Long Integer poate fi

afişată sub mai multe forme. ACCESS permite şi realizarea unor formate nestandard,

personalizate.

Numărul de zecimale (Decimal places). În cadrul acestei proprietăţi se

stabileşte numărul de zecimale ce pot fi atribuite câmpului. Există o listă de opţiuni şi

se pot selecta valori cuprinse între 0 şi 15 sau Auto pentru determinarea automată a

numărului de zecimale.

Formatul de introducere (Input Mask). Reprezintă impunerea unui anumit

format pentru toate datele incluse în cadrul acestui câmp.

Eticheta (Caption). Aceasta permite specificarea unui anumit nume atribuit

câmpului, în cazul în care acesta este utilizat în cadrul formularelor sau când tabela

este afişată.

Valoarea iniţială (Default Value) este o valoare care este atribuită automat, în

momentul când utilizatorul nu introduce nici o valoare în acel câmp.

Regula de validare (Validation Rule). Regulile de validare testează valoarea

introdusă într-un câmp.

Textul de validare (Validation Text) reprezintă textul care va apărea pe bara

de mesaje în cazul în care valoarea introdusă nu respectă criteriul impus de regula de

validare.

Cerut (Required). Prin această proprietate se stabileşte dacă prin introducerea

unei înregistrări în cadrul tabelei este obligatorie şi completarea respectivului câmp.

46

Page 48: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Indexat (Indexed). Dintr-o listă derulantă se poate alege între un index care

admite valori duplicat sau unul care cere ca fiecare valoare a câmpului să fie unică.

Eliminarea unui index inexistent se realizează prin selecţia opţiunii No.

Proprietăţile descrise mai sus se aplică câmpurilor ce conţin date de tip

numeric. O parte dintre ele se regăsesc şi în cadrul câmpurilor ce conţin alte tipuri de

date, existând totodată şi proprietăţi specifice acestora.

4.2.5 Introducerea datelor în tabele

În cadrul aplicaţiilor ACCESS datele pot fi introduse în tabele printr-o

multitudine de metode. Spre exemplu, în fereastra Database, alegem tabela CD în

care dorim să introducem date, şi activăm butonul <Open>. Pe ecran va apărea

fereastra (figura 4.9) Datasheet, în cadrul căreia introducem, vizualizăm sau

modificăm date. Procedeul este identic şi pentru celelalte tabele.

4.2.6 Salvarea datelor

Atunci când în fereastra de proiectare se realizează modificări asupra unui

obiect (tabel, formular, raport, comandă macro, cerere de interogare), la închiderea

acestei ferestre utilizatorul este întrebat dacă doreşte salvarea obiectului cu noile

modificări aduse. Acest lucru se poate realiza şi prin comanda <File, Save>.

În cadrul ferestrei Database se poate schimba numele unei tabele sau unui alt

obiect. De asemenea, prin operaţiile specifice sistemului de operare Windows

Copy/Paste, se pot crea foarte uşor tabele (sau alte obiecte), identice (cu aceeaşi

structură sau chiar cu aceleaşi date).

47

Page 49: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.9. Fereastra Datasheet a tabelei CD

48

Page 50: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.3 Interogarea bazei de date

Interogarea bazei de date se poate face prin:

Vizualizarea în totalitate a conţinutului tabelelor;

Vizualizarea parţială sau totală a conţinutului tabelelor cu ajutorul unor

formulare sau situaţii finale;

Prin cereri explicite.

Primele două moduri pot fi catalogate ca interogări simple, fără restricţii şi pot

fi formulate pentru o singură tabelă. Interogarea prin cereri explicite este complexă,

foloseşte mai multe tabele, ale căror date sunt filtrate prin intermediul unor criterii.

Această ultimă modalitate, în ACCESS se numeşte cerere de interogare (query).

Crearea unei cereri de interogare se poate face în mai multe feluri:

Proiectarea pas cu pas a cererii în modul Design View (fereastră de

proiectare);

Utilizând instrumentul wizard;

Exprimarea cererii în limbajul SQL;

Crearea unui filtru şi salvarea acestuia ca interogare.

Pentru a crea o cerere de interogare pas cu pas în modul Design view:

1. În fereastra Database se realizează clic pe <Queries> şi <New>.

2. În caseta de dialog New Query (figura 4.10) se execută clic pe Design view şi

apoi <OK>.

3. În caseta de dialog Show Table (figura 4.11) se execută clic pe tab-ul care dă

lista obiectelor bazei de date.

4. Dublu clic pe numele fiecărui obiect pe care vrem să-l folosim şi apoi clic pe

<Close>.

49

Page 51: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.10. Fereastra New Query

Figura 4.11. Caseta de dialog Show Table

5. Dacă avem mai multe tabele şi/sau cereri de interogare, trebuie să ne asigurăm

că între ele există legăturile necesare pentru a răspunde cerinţelor impuse de

noua cerere de interogare.

6. Dacă nu există legăturile necesare între tabele, se stabilesc prin glisarea

mouseu-lui de pe câmpul de legătură din tabela principală spre cel din cea

secundară; câmpurile numerice de legătură Field Size trebuie să fie byte,

integer sau long integer.

50

Page 52: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

7. Trecerea câmpurilor dintr-o tabelă în grila de proiectare se face în două

moduri: dublu clic în bara de titlu a listei de câmpuri, clic în lista de câmpuri

şi apoi deplasarea în grila de proiectare; prin deplasarea caracterului * în grila

de proiectare.

8. Ordonarea datelor se face crescător sau descrescător, după unul sau mai multe

cămpuri. Pentru aceasta se realizează clic în celula de la intersecţia coloanei

câmpului cu caseta Sort şi apoi se alege Ascending sau Descending.

9. Criteriile de selecţie se introduc în celula aflată la intersecţia coloanei

câmpului cu linia Criteria din grila de interogare.Acestea pot fi simple sau

compuse şi pot utiliza o serie de cuvinte rezervate şi expresii definite de

utilizatori.

10. Dacă este nevoie se pot realiza câmpuri calculate.

11. Salvarea unei cereri de interogare se face prin comanda <File, Save>.

În cele ce urmează vom da exemple de interogări efectuate pe baza de date ce

conţine CD-uri.

În figura 4.12, este prezentată Cerea de interogare CDDiferite. S-au selectat

tabelele CD, PRODUCATOR şi TIP, iar din ele s-au selectat câmpurile Nume CD,

AnAp_CD din tabela CD, ID_Prod, Firma Prod din tabela PRODUCATOR şi

Denumire CD din tabela TIP. Criteriul ales, este ca anul apariţiei CD-urilor să fie

2003 şi s-a sortat ascendent, în funcţie de ID-ul producătorului. Foaia de răspuns

aferentă este prezentată în figura 4.13.

51

Page 53: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.12. Cererea de interogare CDDiferite

Figura 4.13. Foaia de răspuns aferentă cererii de interogare CDDiferite

Un alt exemplu de cerere de interogare este interogarea dintre tabelele CD,

FILM şi REGIZOR (figura 4.14). Din tabela CD s-a selectat codul CD-urilor, din

tabela FILM, numele şi durata filmului, NR de CD-uri, iar din tabela REGIZOR,

compania producătoare. S-a sortat ascendent în funcţie de codul CD-urilor, iar

52

Page 54: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

criteriul ales a fost ca numale CD-urilor selectate să poarte numele filmului Pitates of

the Carribbean.

Figura 4.14. Cererea de interogare CDFilm

Figura 4.15. Foaia de răspuns aferentă cererii de interogare CDFilm

Limbajul SQL este un limbaj neprocedural sau declarativ, deoarece

utilizatorul lui descrie numai informaţiile pe care vrea să le obţină în urma interogării,

fără a fi nevoie să stabilească modalităţile de a ajunge la rezultatele dorite. În acelaşi

timp, SQL nu poate fi considerat un limbaj de programare sau unul de sistem, ci mai

curând un limbaj de aplicaţii, fiind orientat pe mulţimi.

SGBD-ul ACCESS 2000 acceptă utilizarea limbajului de interogare SQL.

Existenţa tehnicii grafice QBE (Query by Example) permite proiectarea facilă a unor

53

Page 55: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

interogări complexe. Informaţia definită pe QBE va fi automat transformată într-o

instrucţiune SQL. Pentru crearea cererilor de interogare în SQL, este necesară

definirea unor instrucţiuni ce vor fi folosite în interogarea bazei de date.

SELECT – se regăsesc şi se afişează informaţiile dorite de utilizator;

FROM – specifică numele tabelei/tabelelor din care se vor obţine datele;

WHERE – face interogările mai selective, specificând faptul că vor fi afişate

numai înregistrările care îndeplinesc criteriul ales;

ORDER BY – utilizată atunci când se doreşte ca rezultatele interogării să fie

ordonate în mod crescător (ASC), sau descrescător (DESC). Sortarea este opţională;

JOIN – specifică tabela care va fi asociată (nume_tabelă1, nume_tabelă2...)

tabelei precizată în clauza FROM;

INNER JOIN – joncţiune internă de tip echivalent;

ON – criteriul de asociere – relaţia dintre câmpurile pe care se bazează

joncţiunea. Unul se află în tabela asociată, iar celălalt există într-o altă tabelă din lista

cu numele tabelelor.

INSERT – se foloseşte pentru adăugarea de înregistrări dintr-o tabelă în alta.

Nu se pot insera date dintr-o tanbelă în ea însăşi, decât dacă în prealabil se face o

modificare a datelor;

DELETE – acţiune de ştergere parţială sau totală a înregistrărilor din tabele. Se

şterge doar conţinutul acesteia, nu şi tabela propriuzisă;

UPDATE – are scopul de a insera noi înregistrări într-o tabelă sau de a

modifica valorile câmpurilor din înregistrările existente;

INTO – clauza în care sunt menţionate câmpurile selectate;

Sintaxa aferentă interogărilor realizate cu aceste instrucţiuni şi clauze, este:

SELECT [domeniu] listă_selecţie

FROM nume_tabelă1

{INNER} JOIN nume_tabelă2

ON criteriul_de_asociere

54

Page 56: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

[{INNER} JOIN nume_tabela3

ON criteriul_de_asociere]...

[WHERE criteriul_de_selecţie]

[ORDER BY câmpuri_criteriu [ASC/DESC]];

În primul exemplu de interogare SQL, s-a selectat din tabela CD: codul,

numele (sortat ascendent) şi anul apariţiei, iar din tabela TIP, s-a selectat denumirea

CD-urilor. Criteriul ales este ca denumirea CD-urilor să fie „soft”.

SELECT CD.Cod_CD, CD.[Nume CD], TIP.[Denumire CD], CD.AnAp_CD

FROM TIP INNER JOIN CD ON TIP.Nr_CD = CD.Nr_CD

WHERE (((TIP.[Denumire CD])="soft"))

ORDER BY CD.[Nume CD];

Figura 4.16. Foaia de răspuns a cererii de interogare CDSoft

Următoarele exemple de interogări au fost realizete pentru: crearea unei tabele

dintr-o cerere de interogare deja existentă (Make Table Query – crearea tabelei Joc),

pentru actualizarea datelor (Update Query – incrementarea Nr_CD), pentru adăugarea

de date în tabelă (Append Query – s-au adăugat câmpurile deja existente, în tabela Joc

modificată) şi pentru ştergerea de date (Delete Query – au fost şterse datele din

tabelă).

55

Page 57: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Cererea de interogare Make Table Query:

SELECT CDJoc.Cod_CD, CDJoc.[Nume CD], CDJoc.Nr_CD, CDJoc.ID_Prod

INTO Joc

FROM CDJoc;

Cererea de interogare Update Query:

UPDATE Joc SET Joc.Nr_CD = 4+1;

Figura 4.17. Foaia de răspuns Figura 4.18. Foaia de răspuns

a cererii de interogare a cererii de interogare

JocTabela JocActualizare

Cererea de interogare Append Query:

INSERT INTO Joc ( Cod_CD, [Nume CD], Nr_CD, ID_Prod )

SELECT Joc.Cod_CD, Joc.[Nume CD], Joc.Nr_CD, Joc.ID_Prod

FROM Joc;

Cererea de interogare Delete Query:

DELETE Joc.Cod_CD, Joc.[Nume CD], Joc.Nr_CD, Joc.ID_Prod, *

FROM Joc;

56

Page 58: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.19. Foaia de răspuns Figura 4.20. Foaia de răspuns

a cererii de interogare a cererii de interogare

JocTabela JocActualizare

57

Page 59: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.4 Formulare

Formularele (Forms) reprezintă interfaţa principală între utilizator şi o aplicaţie

Microsoft ACCESS, fiind obiecte ale bazei de date ce permit introducerea şi afişarea

datelor într-o manieră cât mai atractivă.

În cadrul unei aplicaţii, formularele pot îndeplini mai multe funcţii:

1. Afişarea şi editarea datelor – cea mai des întâlnită formă de utilizare a

formularului. Formularul permite afişarea datelor în forma dorită, datele afişate

pot fi uşor modificate sau şterse.

2. Controlul operaţiilor realizate de aplicaţie – se pot proiecta formulare, care

împreună cu comenzi macro sau cu proceduri Visual Basic, să realizeze

afişarea automată a anumitor date sau executarea automată a unui şir de

operaşii cum ar fi deschiderea unui subformular dintr-un formular.

3. Introducerea de date.

4. Afişarea de mesaje – pot furniza date privind modul în care aplicaţia poate fi

utilizată sau despre operaţiile ce urmează a fi executate.

5. Tipărirea informaţiilor.

În general, un formular este compus din trei părţi: antetul (Detail), zona de

lucru şi subsolul. În zona detaliu sunt prezentate, în fapt, datele. În antet şi subsol sunt

prezentate informaţii statice care nu se schimbă pe măsură ce edităm alte înregistrări.

Un formular se poate crea prin utilizarea instrumentului wizard (creare

automată), sau prin creare în fereastra de proiectare (creare manuală).

4.4.1 Crearea automată a unui formular

În fereastra Database se activează butonul <New>. Pe ecran va apărea

fereastra Form (figura 4.21). dintre opţiunile din dreapta ale ferestrei New Form vom

selecta Form Wizard, ceea ce înseamnă că vom crea formularul cu ajutorul

instrumentului wizard. În partea de jos a ferestrei New Form, utilizarea listei derulante

58

Page 60: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

ne permite să alegem tabela cu care formularul va lucra, în cazul nostru tabela

REGIZOR. Prin activarea butonului <OK> pe ecran va apărea o primă fereastră Form

Wizard (figura 4.22). În cadrul acestei ferestre se selectează câmpurile asupra cărora

va opera formularul pa care-l construim Trecerea de la o fereastră Wizard la alta se

realizează prin acţionarea butonului <OK>.

Figura 4.21. Fereastra New Form

În cea de-a doua fereastră Form Wizard (figura 2.23), se selectează modul în

care sunt prezentate datele în cadrul formularului. Unul dintre aceste moduri este

Justified.

59

Page 61: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.22. Prima fereastră Form Wizard

Figura 4.23. A doua fereastră Form Wizard

60

Page 62: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

În următoarea fereastră Form Wizard (figura 4.24), se poate selecta stilul

formatului, prin stil înţelegând un anumit tip de fundal, anumite caractere şi culori ale

acestora, etc.

Figura 4.24. A treia fereastră Form Wizard

În ultima fereastră Form Wizard (figura 4.25), se introduce numele

formularului, în cazul nostru Regizor şi se alege modul de afişare al acestuia. Crearea

formularului se încheie prin acţionarea butonului <Finish>.

61

Page 63: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.25. Ultima fereastră Form Wizard

Dacă, la selectarea modului în care va fi afişat pe ecran formularul creat, am

ales opţiunea Open the form to view or enter information pe ecran ne va apărea

formularul Regizor (figura 4.26), care ne va permite să introducem date privind

persoana care regizează un film, oferindu-ne totodată posibilitatea de a modifica sau

doar vizualiza datele introduse anterior. Dacă însă am ales opţiunea Modify the form´s

design, pe ecran va apărea fereastra de proiectare pentru formularul Regizor (figura

4.27), unde putem face modificările dorite asupra formularului, precum:

redimensionarea sau rearanjarea controalelor, schimbarea fontului sau a culorilor, etc.

62

Page 64: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.26. Formularul Regizor

Figura 4.27. Formularul Regizor în cadrul ferestrei de proiectare

Elementele grafice, care se pot adăuga unui formular, se prezintă sub formă de

controale. Aceste controale pot fi apelate prin selectarea lor din cadrul barei de

instrumente Toolbox (figura 4.28).

Figura 4.28. Bara de instrumente Toolbox

Select Objects – deselectează instrumentul selectat anterior şi restabileşte funcţia

normală pentru indicatorul mouseu-lui.

63

Page 65: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Control Wizards – activează/dezactivează programele Control Wizards.

Label – casetă ce conţine texte fixe de descriere sau instrucţiuni.

Text Box – casetă care afişează şi permite editarea datelor de tip text.

Option Group – casetă dreptunghiulară de dimensiune variabilă în care putem

plasa, butoane comutatoare, butoane de opţine sau casete de validare.

Toggle Button – buton care, atunci când este selectat, comută din starea On în

starea Off.

Option Button – buton rotund care se comportă identic cu un buton comutator.

Checg Box – casetă de validare care, atunci când este selectată comută între starea

On şi Off.

Combo Box – casetă combinată formată dintr-o casetă de text editabilă, în care

putem introduce o valoare şi o listă din care putem alege o valoare dintr-un set.

List Box – casetă ce conţine o listă derulantă de opţiuni din care putem selecta o

valoare.

Command Button – buton de comandă care, atunci când se execută clic pe el,

comută un eveniment care execută o comandă macro Access sau o procedură VBA de

tratare a evenimentelor.

Image – afişează un grafic static pe un formular sau într-un raport.

Unbound Object Frame – include în formular sau în raport un obiect OLE creat

cu o aplicaţie server OLE, cum ar fi Microsoft Graph sau Microsoft Draw.

Bound Object Frame – afişează conţinutul unui câmp OLE al unei înregistrări,

dacă acesta conţine un obiect grafic.

Page Break – determină imprimanta să treacă la o pagină nouă începând cu

poziţia delimitatorului de pagină din formular sau din raport.

64

Page 66: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Tab Control – se foloseşte în vederea creării unei serii de pagini ce pot fi

schimbate.

Subform/Subreport – ataşează unui formular sau raport un subformular, respectiv

un subraport.

Line – creează o linie dreaptă pe care putem să o redimensionăm şi să-i poziţionăm

poziţia.

Rectangle – creează un dreptunghi pe care putem să-l redimensionăm şi să-l

repoziţionăm.

More Controls – permite introducerea obiectelor de control ActiveX instalate în

sistem.

Un exemplu de formular care conţin elemente grafice create cu ajutorul barei

de instrumente Toolbox, îl reprezintă formularul CD.

După cum se observă, primul formular (figura 4.29) conţine: un buton de

căutare, care ne ajută să găsim anumite informaţii, un buton de execuţie a unei

macrocomenzi (Macro CD), şi un subformular. Pentru toate acestea s-au folosit

butoane de comandă (Command Button) şi un buton de creare al subformularului.

Figura 4.29. Formularul CD

65

Page 67: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Codul în VBA al butoanelor adăugate formularului va fi următorul:

Private Sub Command14_Click()

DoCmd.DoMenuItem acFormBar, acEditMenu, 10, ,

acMenuVer70

End Sub

Private Sub Command16_Click()

stDocName = "Macro CD"

DoCmd.RunMacro stDocName

End Sub

4.4.2 Subformulare

Subformularul este un formular inclus într-un alt formular, pentru a permite

afişarea datelor din mai multe tabele sau cereri de interogare. Din punct de vedere al

formatului de prezentare, un subformular poate fi de două feluri: foaie de date – se

poate crea într-o manieră foarte simplă şi permite modificări privind dimensionarea şi

aranjarea coloanelor, sau formular – oferă posibilităţi multiple de aranjare a datelor,

de utilizare a culorilor, etc. Pentru a crea un ansamblu formular – subformular, există

3 posibilităţi:

creare formularului şi subformularului concomitent;

crearea subformularului şi adăugarea lui la formular;

crearea separat a celor două şi apoi combinarea lor.

Un exemplu de ansamblu formular – subformular, avem în figura 4.29.

Pentru a vedea sau modifica proprietăţile unui formular executăm clic dreapta

şi alegem opţiunea Properties (figura 4.30) şi anume Form, şi astfel putem vedea care

sunt proprietăţile formularului, sau dacă dorim le putem schimba. Acelaţi lucru este

valabil şi în cazul proprietăţilor butoanelor adăugate.

66

Page 68: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.30. Fereastra Properties – Form

4.4.3 Proceduri şi obiecte Visual Basic pentru ACCESS 2000

Limbajul Visual Basic for Applications Access 2000 (VBA), este un limbaj

orientat pe obiecte şi pe evenimente. O bază de date Access este formată dintr-o

mulţime de obiecte, care se pot folosi din VBA.

Unele obiecte predefinite din Access au asociate colecţii, care sunt de

asemenea obiecte. Fiecare colecţie grupează obiecte de acelaşi tip. Pentru a nu se crea

confuzii, putem spune că în Access sunt predefinite tipuri de obiecte, fiecare tip de

obiect având asociată o colecţie, în care regăsim obiectele din tipul respectiv.

Obiectele dintr-o colecţie sunt practic obiecte definite de utilizator – formulare,

rapoarte, tabele, etc. – sau create automat de Access 2000.

O procedură, reprezintă o secvenţă de instrucţiuni, care realizează o prelucrare

bine definită din punct de vedere funcţional. Acestea pot fi apelate ori de câte ori este

nevoie, fără a mai fi necesară rescrierea lor. În felul acesta se reduce considerabil

efortul de programare.

67

Page 69: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Private – semnifică faptul că procedura poate fi apelată numai din modulul

unde a fost definită.

Obiectul DoCmd

Dispune numai de metode, care se pot utiliza pentru a executa diferite acţiuni

VBA (deschiderea unui formular, a unui raport, executarea unei interogări acţiune).

Sintaxa generală utilizată de acest obiect în momentul în care se invocă o metodă este:

[application.] DoCmd.nume_metodă [argument_1,...]

application – un obiect de tip Application;

nume_metodă – una dintre metodele acestui obiect;

argument1,... – parametri ai metodei apelate.

Metode ale acestui obiect:

OpenTable – deschide o tabelă, în modul Design, în mod

Datasheet, sau în mod previzualizare înaintea tipăririi:

DoCmd.OpenTable nume_tabelă [,mod_vizualizare][,mod_editare]

mod_vizualizare – constantă ce stabileşte modul de deschidere a tabelei

(tabelul 4.1).

mod_editare – constantă care stabileşte modul de deschidere al tabelei din

punct de vedere al operaţiunilor de actualizare a înregistrărilor tabelei. Această

constantă are efect numai dacă parametrul mod_vizualizare lipseşte sau are

valoarea acViewNormal (tabelul 4.2).

68

Page 70: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Constanta DescriereacViewDesign Se afişează fereastra Design, de modificare a structurii

unei tabele.acViewNormal Se afişează fereastra Datasheet, cu întregistrările

conţinute de tabelă. Acest parametru este implicit, în cazul în care nu se specifică nici una dintre cele trei constante.

acViewPreview Se afişează fereastra de previzualizare înainte de imprimare a înregistrărilor conţinute de tabela specificată.

Tabelul 4.1

Constanta DescriereacAdd Tabela este deschisă numai pentru adăugarea de

înregistrări.acEdit Tabela este deschisă pentru toate operaţiile de actualizare

(adăugare, modificare, ştergere).acReadOnly Nu este permisă actualizarea înregistrărilor.

Tabelul 4.2

OpenForm – deschide un formular:

doCmd.OpenForm nume_formular[,mod_vizualizare]

[,nume_filtru] [,clauză_where][,mod_editare]

[,tip_fereastră][,parametrii_formular]

mod_vizualizare – constantă care stabileşte modul de vizualizare al

formularului pe ecran (tabelul 4.3).

nume_filtru – şir de caractere care indică o interogare din baza de date folosită

pentru a filtra înregistrările afişate de formular.

Constanta Descriere

69

Page 71: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

acDesign Este deschisă fereastra de proiectare a formularului Design Form.

acFormDS Formularul este deschis în modul actualizare înregistrări Open Form, însă în modul de afişare înregistrări DataSheet.

acNormal Formularul este deschis în modul actualizare înregistrări Open Form, însă afişat pe ecran aşa cum a fost el construit în fereastra Design Form.

acPreview Formularul este deschis în modul previzualizare înainte de imprimare.

Tabelul 4.3

clauza_where – şir de caractere ce conţine o caluză SQL WHERE, validă,

utilizată pentru a selecta numai anumite înregistrări pentru a fi afişată în

formular. Se utilizează fără cuvântul cheie WHERE.

mod_editare – constantă care indică modul de deschidere al formularului din

punct de vedere al operaţiilor de actualizare asupra înregistrărilor afişate de

formular.

paramatrii_formular – şir de caractere, care este transmis formularului în

momentul deschiderii. Acest şir de caractere se regăseşte apoi în proprietatea

OpenArgs a formularului (în care acesta este deschis), de unde poate fi accesat.

OpenReport – deschide un raport:

DoCmd.OpenReport nume_raport[,mod_vizualizare]

[,nume_filtru][,clauză_wher]

mod_vizualizare – tabelul 4.4.

Constanta Descriere

70

Page 72: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

acDesign Este deschisă fereastra de proiectare a raportului Design Report.

acNormal Raportul este listat la imprimantă.acPreview Raportul este deschis în modul previzualizare înainte de

imprimare.

Tabelul 4.4

nume_filtru, clauză_where – aceleaşi semnificaţii ca în cazul metodei

OpenForm.

OpenQuery – deschide o interogare sau execută o interogare acţiune:

DoCmd.OpenQuery

nume_interogare [,mod_vizualizare][,mod_editare]

mod_vizualizare – constantă care stabileşte modul de deschider a interogării.

Valorile acestei constante sunt aceleaşi ca în cazul metodei OpenTable.

mod_editare – constantă cu aceeaşi semnificaşie ca în cazul metodei

OpenTable.

Close – închide un obiect:

DoCmd.Close [tip_obiect, nume_obiect] ,[salvare]

tip_obiect – constantă care indică tipul obiectului care urmează a fi închis.

salvare – constantă care indică dacă eventualele modificări ale obiectului vor

fi salvate înainte de a fi închis.

Quit – are ca efect ieşirea din baza de date şi din Microsoft ACCESS.

DoCmd.Quit [opţiuni]

opţiuni – constantă care indică dacă eventualele obiecte nesalvate vor fi

salvate la ieşirea din ACCESS.

71

Page 73: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

În cazul de faţă, pentru baza de date de CD-uri, au fost create formulare, care

uşurează deschiderea tabelelor, cererilor de interogare, rapoartelor sau celorlalte

formulare sub diferite vizualizări (design, normal, preview), prin folosirea de butoane

de comandă, care au ataşate secvenţe de cod VBA.

Primul formular creat (figura 4.32), este un formular ce deschide alte trei

formulare, care la rândul lor, deschid tabele, cereri de interogare, respectiv formulare

şi rapoarte. Deasemenea mai conţine şi butoane de ieşire din formular în baza de date,

respectiv de ieşire din Access.

Formularul Tabele conţine butoane care deschid tabelele bazei de date.

Formularul Cereri Interogare, conţine butoane de deschidere a cererilor de ionterogare

efectuate pe baza de date. Formularul RapForm conţine butoane de deschidere a

formularelor şi rapoartelor efectuate pe baza de date.

Pentru a lega secvenţele de cod de butoanele formularelor, în modul Design al

formularului, selectăm butonul respectiv, şi folosind fereastra de dialog Properties

alegem numele butonului (Caption), numele (Name), şi în secţiunea event, la

evenimentl dorit se alege Event Procedure şi se leagă butonul respectiv de secvenţa de

cod (figura 4.31).

Figura 4.31. Fereastra Properties a

Butonului de comandă Iesire in baza de date

72

Page 74: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.32. Formularul Deschide

Instrucţiunile în cod VBA, corespunzătoare formularului Deschide:

Private Sub DesFormCerInt_Click()

stDocName = "Cereri Interogare"

DoCmd.OpenForm stDocName, acNormal, , stLinkCriteria

End Sub

Private Sub DesFormTab_Click()

stDocName = "Tabele"

DoCmd.OpenForm stDocName, acNormal, , stLinkCriteria

End Sub

Private Sub DesFormRapForm_Click()

stDocName = "RapForm"

DoCmd.OpenForm stDocName, acNormal, , stLinkCriteria

End Sub

73

Page 75: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Private Sub Iesire_in_baza_de_date_Click()

DoCmd.Close

End Sub

Private Sub Iesire_din_Access_Click()

DoCmd.Quit

End Sub

Figura 4.33. Formularul Tabele

Instrucţiunile în cod VBA, corespunzătoare formularului Tabele:

Private Sub DesTabProd_Click()

DoCmd.OpenTable "Producator", acViewNormal, acEdit

End Sub

Private Sub DesTabFilm_Click()

DoCmd.OpenTable "Film", acViewPreview, acReadOnly

End Sub

Private Sub DesTabReg_Click()

DoCmd.OpenTable "Regizor", acViewDesign, acEdit

74

Page 76: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

End Sub

Private Sub DesTabCD_Click()

DoCmd.OpenTable "CD", acViewDesign, acEdit

End Sub

Private Sub DesTabTip_Click()

DoCmd.OpenTable "Tip", acViewNormal, acEdit

End Sub

Private Sub DesTabMuz_Click()

DoCmd.OpenTable "Muzica", acViewPreview, acReadOnly

End Sub

Private Sub DesTabArt_Click()

DoCmd.OpenTable "Artist", acViewNormal, acEdit

End Sub

Figura 4.34. Formularul Cereri Interogare

75

Page 77: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Instrucţiunile în cod VBA, corespunzătoare formularului Cereri Interogare:

Private Sub CerIntFilm_Click()

stDocName = "CDFilm"

DoCmd.OpenQuery stDocName, acViewNormal, acEdit

End Sub

Private Sub CerIntMuzq_Click()

stDocName = "CDMuzica"

DoCmd.OpenQuery stDocName, acViewDesign, acEdit

End Sub

Private Sub CerIntDif_Click()

stDocName = "CDDiferite"

DoCmd.OpenQuery stDocName, acViewDesign, acEdit

End Sub

Private Sub CerIntSoftq_Click()

stDocName = "CDSoft"

DoCmd.OpenQuery stDocName, acViewPreview, acEdit

End Sub

Private Sub CerIntJocq_Click()

stDocName = "CDJoc"

DoCmd.OpenQuery stDocName, acViewNormal, acEdit

End Sub

Private Sub CerIntJocTabela_Click()

stDocName = "JocTabela"

76

Page 78: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

DoCmd.OpenQuery stDocName, acViewDesign, acEdit

End Sub

Private Sub CerIntJocActualizare_Click()

stDocName = "JocActualizare"

DoCmd.OpenQuery stDocName, acViewDesign, acEdit

End Sub

Private Sub CerIntJocAdaugare_Click()

stDocName = "JocAdaugare"

DoCmd.OpenQuery stDocName, acViewDesign, acEdit

End Sub

Private Sub CerIntJocStergere_Click()

stDocName = "JocStergere"

DoCmd.OpenQuery stDocName, acViewDesign, acEdit

End Sub

Figura 4.35. Formularul RapForm

77

Page 79: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Instrucţiunile în cod VBA, corespunzătoare formularului RapForm:

Private Sub DesFormCD_Click()

stDocName = "CD"

DoCmd.OpenForm stDocName, acNormal, , stLinkCriteria

End Sub

Private Sub DesFormProd_Click()

stDocName = "Producator"

DoCmd.OpenForm stDocName, acNormal, , stLinkCriteria

End Sub

Private Sub DesFormReg_Click()

stDocName = "Regizor"

DoCmd.OpenForm stDocName, acDesign, , stLinkCriteria

End Sub

Private Sub DesFormSoft_Click()

stDocName = "Soft"

DoCmd.OpenForm stDocName, acPreview, , stLinkCriteria

End Sub

Private Sub VizRapCD_Click()

stDocName = "CD"

DoCmd.OpenReport stDocName, acPreview

End Sub

Private Sub VizRapArt_Click()

stDocName = "Artist"

78

Page 80: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

DoCmd.OpenReport stDocName, acPreview

End Sub

Private Sub VizRapFilm_Click()

stDocName = "Film"

DoCmd.OpenReport stDocName, acViewDesign

End Sub

Private Sub VizRapProd_Click()

stDocName = "Producator"

DoCmd.OpenReport stDocName, acViewPreview

End Sub

Private Sub DesRapJoc_Click()

stDocName = "Joc"

DoCmd.OpenReport stDocName, acViewDesign

End Sub

79

Page 81: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.5 Rapoarte

Vizualizarea datelor dintr-o bază de date se poate face pe ecran sau la

imprimantă, prin intermediul foilor de date, formularelor şi rapoartelor. Ultima

constituie modalitatea cea mai bună de prezentare a datelor pe hârtie.

Un raport reprezintă o grupare de date prezentate într-un anumit format şi o

structură de pagină în funcţie de necesităţile utilizatorilor şi care servesc diverselor

scopuri de informare sau de fundamentare a deciziilor. Elementele de legătură dintre

rapoarte şi sursa de date o constituie controalele, zonele de text, cadrele şi etichetele.

Crearea unei situaţii finale în ACCESS se poate face cu sau fără ajutorul

instrumentului wizard.

Pentru a crea un raport, procedăm astfel:

1. se activează butoanele Reports şi New care vor afişa o casetă de dialog;

2. se selectează sau se introduce numele tabelei sau cererii de interogare pe

care se va baza;

3. se selectează Report wizard şi se urmează instrucţiunile din casetele de

dialog (ca şi la crearea formularelor); sau

4. se selectează Design view şi se completează situaţia cu controalele

necesere, şi alte elemente dorite de utilizator.

În cazul de faţă, raportul Artist de exemplu, a fost creat folosind Report wizard.

Crearea unui raport folosind Report wizard se face asemănător creării formularelor în

Form wizard.

Prima fereastră a creării unui raport este reprezentată în figura de mai jos:

80

Page 82: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura4.36. Fereastra New Report

Figura 4.37. Raportul ARTIST

81

Page 83: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Figura 4.38. Vizualizarea raportului ARTIST

82

Page 84: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Structura unui raport este ierarhizată astfel: Report Header/Footer

(Antetul/Subsolul raportului), Page Header/Footer (Antetul/Subsolul de pagină) şi

secţiunea Detail (Detalii).

Secţiunea Report Header – cuprinde informaţii care nu se modifică de la o

înregistrare la alta (de exemplu: Nume Artist, Tip Muzică, etc.).

Secţiunea Report Footer – cuprinde informaţii precum data şi ora la care a fost

realizat raportul, numărul de pagini.

Secţiunea Page Header – cuprinde elementele (de regulă grafice) care vor

apare în antetul fiecărei pagini a raportului.

Secţiunea Detail – cuprinde informaţii ce vor fi afişate în cadrul raportului.

Secţiunea Page Footer – cuprinde informaţii ce vor fi afişate la sfârşitul

raportului (numărul paginii, data tipizării).

După crearea unui raport, pentru verificarea lui înainte de a fi tipărit, îl putem

vizualiza parţial sau total (figura 4.38).

Utilizarea instrumentului wizard permite crearea umor rapoarte cu o structură

standard care nu ţine seama în totalitate de cerinţele utilizatorului. Această structură

poate fi ulterior modificată cu ajutorul instrumentelor disponibile (bara de

instrumente). Aceste instrumente au fost definite şi explicate în cadrul subcapitolului

despre formulare. Prin urmare, toate operaţiile de aducere a câmpurilor din lista de

câmpuri a tabelei sau cererii de interogare în zona de lucru în vederea generării de

controale dependente, redimensionarea, deplasarea, modificarea lor se face ca şi la

formulare.

Odată cu definirea unei situaţii finale, toate controalele dependente vor moşteni

proprietăţile câmpurilor din tabele sau cererea de interogare pe care se bazează.

Înregistrarea şi închiderea unui raport se face ca oricare alt fişier. Rezultatul unui

raport poate fi tipărit sau salvat într-un fişier, în vederea păstrării. Înainte de tipăriri,

este necesară definirea parametrului de orientare a paginii.

83

Page 85: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

4.6 Comenzi macro

În cadrul unei aplicaţii în ACCESS, o importanţă deosebită o prezintă

automatizarea acesteia. Prin automatizare înţelegem că pe baza unei acţiuni a

utilizatorului, se determină realizarea uneia sau mai multor operaţii.

Această automatizare a operaţiilor o putem face utilizând comenzile macro,

care reprezintă o formă simplificată a limbajului de programare VBA.

Comenzile macro sunt deosebite prin caracteristica lor unică şi anume, că

permit automatizarea diverselor evenimente fără ca realizatorul aplicaţiei să fie nevoit

să cunoască un limbaj de programare.

În cadrul comenzilor macro pot fi incluse un număr mare de acţiuni a căror

derulare poate fi condiţionată de anumite valori afişate în formulare sau rapoarte.

Microsoft ACCESS oferă un mare număr de tipuri de acţiuni ce pot fi

executate în cadrul unor comenzi macro:

Deschiderea sau închiderea de tabele, cereri de interogare, formulare sau

rapoarte;

Vizualizarea sau tipărirea rapoartelor;

Rularea cererilor de interogare de acţiune;

Apelarea altor comenzi macro;

Efectuarea condiţonată a anumitor acţiuni;

Căutarea anumitor date în tabele;

Deschiderea sau includerea diferitelor meniuri din ACCESS;

Afişarea de mesaje de atenţionare sau chiar sunete de atenţionare;

Ştergerea, redenumirea, copierea sau salvarea diferitelor obiecte ale aplicaţiei;

Comunicarea cu alte produse software (Word, Excel).

Comenzile macro se creează în cadrul ferestrei de proiectare (figura 2.29).

După cum se observă fereastra de proiectare a comenzilor macro are două părţi: lista

de acţiuni cu comentarii şi descrierea fiecărei acţinui din cadrul listei.

84

Page 86: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

De exemplu, dorim să creăm o comandă macro care prin rulare: să deschidă

formularul Regizor în formatul Form, să deschidă cererea de interogare CDFilm în

format Datasheet şi să ruleze comanda macro Macro CD. Comanda macro Macro CD,

prin rulare realizează următoarele: deschide tabela CD în format Datasheet, şi

deschide raportul CD în format Design. Comanda macro care va realiza toate aceste

lucruri prin rulare, se va numi Macro Reg.

Fereastra de proiectare a comenzii MacroReg va arăta în felul următor:

Figura 4.39. Fereastra de proiectare MacroReg

85

Page 87: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

CAPITOLUL 5

5. CONCLUZII

Lucrarea de faţă, realizată cu ajutorul programului Microsoft Access,

reprezintă o încercare de a oferi cititorilor, modalitatea în care a fost concepută şi

proiectată, o bază de date care ilustrează o bibliotecă de CD-uri. De aceea, lucrarea

este intitulată sugestiv „Proiectarea bazelor de date relaţionale pentru gestionarea unei

biblioteci de CD-uri, folosind Microsoft Access”.

Lucrarea a fost realizată folosind Microsoft Access 2000 – un instrument

puternic, uşor de utilizat şi care prezintă o interfaţă grafică realizată pentru uşurinţa

folosirii instrumentelor sale şi totodată prietenoasă cu utilizatorul.

Biblioteca de CD-uri, cuprinde CD-uri ce conţin produse soft, jocuri, filme şi

albume muzicale.

Concepută iniţial, baza de date conţinea doar entităţile CD, PRODUCATOR,

TIP, REGIZOR şi ARTIST. În tabela CD erau reţinute toate CD-urile, iar în celelalte

se reţineau informaţii despre producători, tipul unui CD, informaţii despre regizorii

filmelor şi despre artişti – interpreţi ai unui album muzical. Dar, fiind concepută în

acest fel, baza de date era greu de utilizat, iar interogările efectuate pe baza de date

erau greu de realizat, sau nu reţineau informaţiile dorite.

De aceea, a fost utilizată normalizarea, şi loa entităţile deja existente, au fost

adăugate alte două: FILM şi MUZICA. Astfel, în ele sunt stocate CD-urile ce conţin

filme, respectiv muzică, şi prin intermediul lor se face uşor legătura între tabelele CD

şi FILM, respectiv CD şi ARTIST. În acest fel, relaţionarea tabelelor a fost făcută mai

uşor şi mai corect, iar interogările efectuate au avut rezultatul dorit.

Pe baza modelului fizic astfel creat, au fost efectuate: interogări în modul

Design View şi interogări SQL de extragere a datelor dorite, de creare a unei tabele

dintr-o cerere de interogare deja existentă, modificări ale datelor din tabela creată,

adăugarea şi ştergerea de date; crearea de formulare de afişare a datelor şi formulare

86

Page 88: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

de deschidere a celorlalteaplicaţii realizate în baza de date, utilizând butoane de

comandă, ce folosesc secvenţe de program în VBA; rapoarte sau situaţii finale şi

macrocomenzi.

Documentul aferent bazei de date, prezintă generalităţi despre domeniul

bazelor de date şi despre programul Microsoft Access, iar modul în care a fost creată

baza de date şi aplicaţiile aferente au fost explicate pe rând, ca un manual de folosire

al unui program.

Baza de date astfel creată, reprezintă un instrument uşor de folosit pentru

stocarea şi gestionarea dunor CD-uri dintr-o bibliotecă personală, sau spre exemplu în

cadrul unei firme. Baza de date poate fi modificată pentru a deveni un instrument de

stocare a datelor într-un magazin de închirieri de CD-uri.

În concluzie, crearea unor baze de date folosind Microsoft Access este uşor de

realizat datorită interfeţei uşor de folosit, iar crearea de aplicaţii pe baza de date se

face foarte facil, datorită instrumentelor wizard care uşurează munca utilizatorilor.

87

Page 89: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

GLOSAR

Append Query – cerere de interogare pentru adăugarea de date într-o tabelă.

Combo Box – casetă combinată – formată dintr-o casetă de text editabilă, în

care putem introduce o valoare şi o listă din care putem alege o valoare dintr-un set.

Command Button – buton de comandă – atunci când se execută clic pe el,

comută un eveniment care execută o comandă macro Access sau o procedură VBA de

tratare a evenimentelor.

Delete Query – cerere de interogare pentru ştergerea de date dint-o tabelă.

Enforce Referencial Integrity – impune integritate referenţială – în cadrul

aplicaţiei, datele nu pot fi introduse în tabele în orice ordine.

List Box – casetă listă – conţine o listă derulantă de opţiuni din care putem

selecta o valoare.

Make Table Query –cerere de interogare de creare a unei tabele.

Macro – macrocomandă– obiect care conţine o definiţie structurală a uneia sau

mai multor acţiuni pe care ACCESS le realizează ca răspuns la un anumit eveniment.

Modify the form´s design – modificarea formularului în faza Design.

Open the form to view or enter information – deschiderea formularului pentru

vizualizarea sau introducerea datelor.

Query – cerere de interogare – obiect care permite vizualizarea informaţiilor

obţinute prin prelucrarea datelor din una sau mai multe tabele şi/sau alte cereri de

interogare.

SGBD – sistem de gestiune al bazelor de date - sistemul de programare care

permite construirea unor baze de date, introducerea informaţiilor în bazele de date şi

dezvoltarea de aplicaţii.

SQL (Structured Query Linguage) – limbaj structurat pentru interogarea

bazelor de date relaţionale.

88

Page 90: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

Update Query – cerere de interogare pentru actualizarea datelor.

VBA – Visual Basic for Applications – limbaj orientat pe obiecte şi pe

evenimente. Obiectele Access se caracterizează prin metode şi proprietăţi.

89

Page 91: Proiectarea Bazelor de Date Relationale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

Proiectarea bazelor de date relaţionale pentru gestionarea unei biblioteci de CD-uri folosind Microsoft Access

BIBLIOGRAFIE

1. Pavel Năstase, Florin Mihai, Bogdan Bărbulescu, Robert Aurelian Şova,

Luana Cosăcescu, Andrei Stanciu, Liana Covrig, „Baze de Date – Microsoft

Access 2000”, Editura Teora, Bucureşti, 2003;

2. Octavian Bâscă, „Baze de date”, Editura All, Bucureşti, 1997;

3. Prof. dr. Viorica Stanciu, asist. drd. Alexandru Gavrilă, asist. drd. Dragoş

Mangiuc, prep. drd. Bogdan Gheorghe Sahlean, „Proiectarea sistemelor

informatice”, Editura Dual Tech, Bucureşti, 2002;

4. I. Roşca, D. Zaharie, „Proiectarea sistemelor informatice (P. S. I.)” – Note

de curs, A. S. E. Bucureşti, 2001;

5. Cornel Ignat, Carmen Petre, „Iniţiere în Access”, Editura Arves, 2002.

90