Documente Academic
Documente Profesional
Documente Cultură
BAZE DE DATE
Modul cum culegi, administrezi i foloseti informaia fac din tine un ctigtor sau un nfrnt n via. n aceast manier dramatic sintetizeaz Bill Gates rolul tehnologiei i informaiei. Este tot mai evident faptul c n prezent existena fiecrui individ n parte, ca i a ntregii societi n ansamblul ei, capt un ritm din ce n ce mai alert, devine tot mai marcat de necesitatea cunoaterii rapide, complete i corecte a realitii nconjurtoare, pentru ca luarea deciziilor s fie fcut ferm, oportun i competent. Aceasta duce, inevitabil, la creterea volumului de informaii ce trebuie analizat, de unde o diminuare a operativitii n aciune. Orice decizie are la baz informaii i date referitoare la obiectul activitii respective.
O colecie de date, al crui coninut poate fi partajat de mai muli utilizatori i care este protejat i gestionat pentru a-i pstra valoarea i calitatea n timp se numete baz de date.
Organizarea datelor n vederea prelucrrii pe calculator este o activitate tot aa de important ca i realizarea programelor.
Cele dou componente principale ale unui sistem informatic: datele i programele, se gsesc ntr-o strns interdependen. Un program, orict de elaborat ar fi, nu va produce rezultatele scontate, dac va lucra cu o structur de date depit. Tot aa de bine, o structura de date bine pus la punct nu va putea suplini carenele unui program care o prelucreaz.
Din punct de vedere al prelucrrii pe calculator, datele sunt definite de trei elemente: un identificator, atribute i valoare.
D = {I, A, V}
Trebuie fcut distincie ntre date, informaii i cunotine. Prelucrarea datelor trebuie fcut n concordan cu cerinele tehnologiei informaionale. Se pot astfel contura diferenele dintre date i informaii: - datele desemneaz elementele primare, provenind din diverse surse, fr o form organizat care s permit luarea unor decizii; - informaiile sunt date ce au un caracter de noutate, care mbogesc nivelul de cunotine ale celui care primete aceste informaii. O dat care nu aduce nimic nou nu se poate considera informaie.
O baz de date este format din date despre entiti i despre relaiile dintre acestea.
Entitile, atributele acestora i totalitatea relaiilor privite independent de modul n care sunt reprezentate i memorate pe un mediu de memorare formeaz baza de date logic, iar reprezentarea pe medii de memorare a entitilor, atributelor i a relaiilor dintre ele formeaz baza de date fizic.
EXEMPLU: Calitatea de student al unei faculti constituie o clas de entiti, iar un student anume, o entitate. Calitatea de student este definit de anumite proprieti, cum ar fi: - nume; - prenume; - numr matricol; - data naterii; - domiciliul; - numrul grupei, etc. toate acestea student. reprezentnd atributele entitii de
Gestionarea datelor include toate activitile care ne asigur c, datele de o calitate superioar, sunt disponibile pentru a produce informaia i cunotinele de care este nevoie. Implementarea efectiv a gestionrii datelor se constituie ntr-un sistem de gestiune a bazelor de date (SGBD). Un sistem de gestiune a bazelor de date este, n general un software, adic un ansamblu unitar de programe (uneori i hardware) special proiectat pentru a crea, proteja i gestiona bazele de date.
Un sistem de gestiune a bazelor de date trebuie s asigure urmtoarele funciuni elementare, referitoare la bazele de date: - definirea bazei de date; - introducerea datelor (adugarea de noi date la baza de date); - modificarea unor date existente n baza de date; - tergerea unor date; - interogarea bazei de date (extragerea unor informaii stocate n baza de date). Aceast tehnic de extragere a datelor, adic interogarea lor, reprezint un limbaj neprocedural pentru interogarea bazelor de date, limbaj numit SQL (Structured Query Language Limbaj Structurat de Interogare).
Implementarea unei baze de date nseamn transformarea unui model de date logic, ntr-o structur fizic. Bazele de date datorit dimensiunii lor mari, NU pot fi memorate n memoria intern, ci pe un mediu secundar. Unitatea de baz pentru transfer de date ntre mediul secundar i memoria intern este nregistrarea. n memoria intern este rezervat o zon numit buffer, prin care programele utilizator efectueaz transferul de date cu dispozitivul secundar de memorare. Pentru optimizarea accesului la nregistrri, se realizeaz gruparea nregistrrilor n blocuri. O colecie de blocuri gestionate mpreun formeaz un fiier.
La proiectarea bazei de date se stabilesc cte cmpuri formeaz mpreun o nregistrare. Sistemul de gestiune a bazei de date apeleaz facilitile sistemului de operare, pentru a realiza operaii de intrare/ieire asupra datelor. Tipul de operaii necesare este funcie de structura (modul de organizare) fiierului.
Fiierele de baze de date pot avea o organizare secvenial, relativ, sau indexat.
Fiiere secveniale pot fi parcurse doar n ordinea fizic a nregistrrilor pe suportul de memorare. Pentru a putea fi parcurse alt ordine, fiierul trebuie sortat n funcie de valorile unor cmpuri, denumite chei de sortare. Fiiere relative utilizeaz valoarea unui cmp din nregistrare pentru a determina locaia fizic a acesteia n fiier. Adresarea direct se face prin intermediul unor tehnici complexe. Fiiere indexate combin tipurile de acces suportate de celelalte dou, nregistrrile fiind accesate secvenial sau direct, prin valoarea unui cmp cheie de acces.
Un avantaj al sistemului de baze de date relaional ar fi c pune la dispoziia utilizatorului instrumente deosebit de folositoare n administrarea bazei de date. Tabele pot fi nu numai instrumentele de stocare a datelor, ci i instrumente de generare a meta datelor, date referitoare la tabelele i numele cmpurilor care descriu structura bazei de date, drepturile de acces la baza de date, reguli de validare i integritate a datelor. Astfel n cadrul modelului de baze de date relaional totul poate fi stocat n tabele. Un utilizator poate face interogri cu privire la numele tabelelor, drepturile de acces i date, rezultatele acestor interogri fiind prezentate utilizatorului sub form de tabele.
Acest principiu face ca administrarea bazei de date s fie la fel de simpl ca i utilizarea.
Aprute la grania dintre dou domenii aparent opuse din punctul de vedere al procesrii datelor (baze de date si reele de calculatoare) bazele de date distribuite se definesc ca o colecie de baze de date logic interconectate, distribuite peste o reea de calculatoare. Transformarea unui sistem centralizat de baze de date ntr-un sistem distribuit const n scindarea bazei de date n seciuni corespunztoare i repartizarea acestora n nodurile reelei. Alocarea partiiilor n nodurile unei reele ine cont de faptul c, datele se vor distribui numai din motive de vitez. Plasarea datelor se face pe staia n care producerea i utilizarea este mai frecvent astfel nct s se minimizeze transportul de date prin reeaua de calculatoare. Utilizatorul nu trebuie s cunoasc modul de partiionare i distribuire a datelor. El lucreaz n acelai mod ca i o baz centralizat. Singurul lucru pe care l cunoate este schema conceptual a bazei de date.
Sistemele moderne de gestiune a bazelor de date conin elemente de prelucrare paralel. Acest concept servete la reuniunea n cadrul aceleiai exploatri a prelucrrilor de rutin (interogri puin complicate, dar numeroase) cu prelucrrile decizionale (interogri complexe ale unui volum important de date). Un SGBD trebuie s realizeze mprirea unei interogri complexe n module executate pe mai multe procesoare i s dirijeze interogrile simple ctre procesorul de care sunt legate discurile purtnd informaia necesar interogrii respective. Obiectivele urmrite vizeaz creterea performanelor SGBD, att pentru activitatea tranzacional, ct i pentru cea decizional, n exploatarea bazelor de dimensiuni mari (Terrabytes).
Descriere + Date
S G B D
Utilizator n
Un SGBD asigur n principal urmtoarele funcii: - descrierea bazei de date (a datelor; a relaiilor existente ntre acestea i a regulilor care permit s se menin integritatea bazei de date); - accesarea de ctre utilizatori a bazei de date (inclusiv accesarea din alte aplicaii, cum ar fi, spre exemplu, aplicaia EXCEL, sau din programe scrise n limbaje clasice, cum ar fi, spre exemplu, limbajul COBOL); - asigurarea confidenialitii datelor (pe baza mecanismelor de acordare i verificare a drepturilor de acces la baza de date).
SGBD-urile pun la dispoziia utilizatorilor limbaje distincte pentru: - descrierea bazei de date (Limbaj de Descriere a Datelor - LDD); - utilizarea (manipularea) bazelor de date (Limbaj de Manipulare a Datelor - LMD).
Limbajele de manipulare (interogare) a bazelor de date pot fi: - declarative, care permit utilizatorului s declare de ce informaii are nevoie (CE?); - procedurale, care oblig utilizatorul s descrie procedura de obinere a informaiilor (CUM?). Evoluia tehnologiilor informaionale face ca n prezent majoritatea SGBD-urilor: - s fie operaionale sub Windows; - s gestioneze date tradiionale, dar i date netradiionale (video, foto, imagine, etc.); - s permit lucrul n reea de calculatoare; - s pun la dispoziia utilizatorilor att limbaje declarative, ct i limbaje procedurale.
Obiectivele principale ale unui SGBDD sunt: - definirea i manipularea coleciilor de date distribuite pe calculatoare diferite, ca un singur ansamblu logic (baza de date distribuit); - distribuirea datelor trebuie s se fac dup criterii foarte variate care s rspund tuturor necesitilor utilizatorilor; - utilizatorii manipuleaz datele fr a cunoate locul unde sunt memorate; - pentru creterea gradului de fiabilitate sau de performan, datele pot fi duplicate pe mai multe sisteme, fr ca utilizatorii s cunoasc acest lucru; - asigurarea coerenei bazei de date n cazul operaiilor de actualizare i de reluare n caz de incidente la unul sau la mai multe din nodurile reelei; - exploatarea bazei de date n regim de multiacces; - controlul accesului la date.
Centru regional 1
Centru regional 2
Centru regional N
LAN Agenia 1
LAN Agenia M
Fluxul datelor
Baze de date operaionale
tergere
Achiziie (extragere)
Arhvare Arhivare
Agregare
Microsoft Access
Exist mai multe modele pentru gestiunea bazelor de date, Microsoft Access fcnd parte din clasa Sistemelor de gestiune a bazelor de date relaionale, ceea ce nseamn c datele sunt memorate n tabele interconectate ntre ele. Putem spune c o tabel conine fie. Fiele sunt denumite nregistrri (records), iar fiecare fi conine una sau mai multe rubrici, denumite cmpuri (fields). Fiecare rubric are anumite proprieti (poate conine numere, date calendaristice, text, etc. Numerele pot fi ntregi sau reale, etc.).
Rndurile tabelului trebuie s difere unul de altul, aceasta permite n mod unic s identificm rndurile oricrui tabel; Coloanelor tabelului le sunt atribuite nume unice i n fiecare din ele sunt introduse date de acelai tip; La efectuarea operaiilor cu tabelele, rndurile i coloanele lor pot fi prelucrate n orice ordine, la aceasta contribuie numele tabelului i a rndului i posibilitatea evidenierii oricrui rnd sau oricrui set de rnduri cu anumite proprieti.
caracteristici
ale
SGBD-ului
- este relaional i lucreaz sub sistemul de operare Windows; - este deschis comunicrii cu alte Sisteme de Gestiune a Bazelor de Date cum ar fi FoxPro sau Paradox; - este compatibil cu tehnologia ActiveX, care permite realizarea aplicaiilor client/server; - permite realizarea unor aplicaii 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 reeaua Internet, fiind un instrument util pentru publicarea informaiilor n paginile Web; - este autodocumentat prin help, apelabil contextural sau la cerere;
- conine instrumente wizard care permit utilizatorului crearea ntr-o manier foarte simpl a obiectelor bazei de date; - permite crearea de comenzi rapide (shortcuts) n vederea accesrii obiectelor ACCESS; - permite crearea de grupuri de obiecte definite de utilizator n cadrul bazei de date; - permite personalizarea bazei de date; - permite utilizarea obiectelor ACCESS din cadrul altor aplicaii rulate sub sistemul de operare Windows.
O baz de date ACCESS poate fi definit ca fiind o colecie de obiecte: tabele (table), interogri (query), formulare (form), rapoarte (report), pagini Web (pages), macroinstruciuni (macro) i module (module).
Tabela (Table) este un obiect definit de utilizator n care sunt stocate datele primare (expresia modelului relaional). Formularul (Form) este un obiect care permite introducerea datelor, afiarea acestora sau controlul ntregii aplicaii. Interogarea (Query) este un obiect care permite vizualizarea informaiilor obinute prin prelucrarea datelor din una sau mai multe tabele i/sau alte cereri de interogare. Raportul (Report) este un obiect care permite formatarea i tiprirea informaiilor obinute n urma consultrii bazei de date sub form de documente.
Pagina Web de accesare a datelor (Pages) reprezint un obiect care include un fiier HTML i alte fiiere suport n vederea furnizrii accesului la date prin intermediul browser-elor Internet. Macroinstruciunea (Macro) reprezint un obiect care conine o definiie structurat a uneia sau mai multor aciuni pe care ACCESS le realizeaz ca rspuns la un anumit eveniment. Modulul (Module) reprezint un obiect care conine proceduri definite de utilizator i scrise n limbajul de programare Visual Basic.
Text - permite introducerea a cel mult 255 de caractere. Se folosete pentru rubrici cum ar fi nume, culoare, denumire, etc. Dimensiunea maxim se precizeaz la proprietatea Field Size. Exemplu: Dac se dorete ca acest cmp s aib cel mult 25 de caractere, se va scrie 25;
Memo - permite introducerea a cel mult 65535 caractere. Spre deosebire de tipul de date Text, se poate introduce i caracterul Enter. Memo se folosete pentru rubrici cum ar fi Observaii.
Number - permite introducerea valorilor numerice. n zona Field Size se specific ce fel de numr este: Byte, ntreg cuprins ntre 0 i 255; Integer, ntreg cuprins ntre 32.768 i 32.767;
Date/Time permite memorarea datei calendaristice i a orei. Forma de afiare se stabilete prin proprietatea Format.
Currency - pentru memorarea valorilor numerice n format monetar cu maxim 15 ntregi i 4 zecimale ; Autonumber - pentru rubrici precum Nr.Crt., care iau valori succesive. Valorile acestui tip de date sunt completate automat;
OLE object - pentru nglobarea n baza de date a diferitelor obiecte create cu alte programe (imagini, sunete, texte etc.);
Hyperlink - pentru crearea de referine ncruciate (este utilizat pentru conectarea la Internet prin intermediul bazei de date) ; Lookup Wizard - pentru crearea de cmpuri ce au valori predefinite.
Tabele / Baze de date (Tables) Formulare (FORMS) Interogri (Query) Rapoarte (Reports) etc.
FIIER
*.mdb
Tabelul este un obiect destinat pstrrii datelor despre un anumit subiect. Subiectul la care se refera datele dintr-un tabel se numete entitate. Pentru fiecare entitate identificat la analiza sistemului, se va crea cte un tabel. Tabelele sunt identificate printr-un nume i apar n fereastra Database cnd se apas butonul Table (toate obiectele se identific printr-un nume n clasa obiectelor din care fac parte). Rndurile dintr-un tabel se numesc nregistrri, iar coloanele, cmpuri. Fiecare cmp al unui tabel va conine acelai tip de informaie, avnd acelai tip de date i acelai caracteristici (de exemplu aceeai lungime maxim). Un tabel conine dou tipuri de informaii: cele care descriu structura tabelului i datele propriu zise.
NUMELE CMPULUI
TIPUL CMPULUI
DESCRIEREA CMPULUI
PROPRIETILE CMPULUI
Field name: numele cmpurilor poate fi format din maximum 64 de caractere, poate s conin spaiu i nu trebuie s conin urmtoarele caractere: [ , ], ., , ! . De asemenea, nu trebuie s fie cuvnt rezervat al ACCESS.
Default Value (Valoarea implicit): este o valoare care este atribuit automat, n momentul cnd utilizatorul nu introduce nici o valoare n acel cmp. Validation Rule (regula de validare): regulile de validare testeaz, conform criteriului furnizat sub forma unei expresii ACCESS, valoarea introdus ntr-un cmp.
Acestea folosesc: - operatorii: =, -, *, /, \, Mod, <, >, <>, =, <=, >=, AND, OR, BETWEEN, IN, IS NULL; - identificatorii se dau n paranteze drepte [ ]; - funcii i constante. Dac nu se specific nici un operator, ACCESS asum automat operatorul de egalitate.
Validation Text (textul de validare): reprezint textul care va aprea pe bara de mesaje n cazul n care valoarea introdus nu respect criteriul impus de regula de validare. Required (cerut): prin aceast proprietate se stabilete dac prin introducerea unei nregistrri n cadrul tabelei este obligatorie i completarea respectivului cmp. Indexed (Indexat): dintr-o list derulant se poate alege ntre un index care admite valori duplicat sau unul care cere ca fiecare valoare a cmpului s fie unic. Access definete automat cheia primar a tabelei ca fiind indexat i fr duplicate (No Duplicated).
INTEROGAREA este un obiect Access ce reprezint o ntrebare pe care o formulm n legtura cu informaiile din baza de date. Rezultatul unei astfel de interogri este o mulime de nregistrri aparinnd unui sau mai multor tabele ale bazei de date. Aceast mulime de nregistrri poart numele de setul dinamic rezultat. Dac n tabelele surs apar modificri, automat setul dinamic rezultat se modific. Rolul interogrii este s extrag din tabelele bazei de date numai informaiile care sunt necesare la un moment dat. Acest lucru mrete viteza de prelucrare i sporete eficiena aplicaiei. Modul de funcionare al unei interogri este bazat pe condiiile de selectare impuse de proiectant .
Mecanismul Access care permite specificarea condiiilor se numete expresie. O expresie este un enun alctuit din operanzi (care reprezint valorile) i operatori (indic modul de combinare a operanzilor). Condiiile sunt specificate printr-un anumit tip de expresie, care se numete expresie logic (cu dou valori, adevrat sau fals). Aceast expresie este evaluat pentru fiecare nregistrare i dac valoarea obinut este True (adevrat), cmpurile selectate din nregistrarea respectiv sunt incluse n setul dinamic rezultat. Interogrile sunt importante cnd se folosesc ca baz pentru crearea machetelor, rapoartelor, sau chiar a altor interogri. Printre posibilitile oferite de interogri se numra : - Sortarea datelor dup valorile unui sau a mai multor cmpuri - Interogarea tabelelor externe (Foxpro, Paradox, etc.) - Efectuarea de calcule pe datele extrase (totaluri, medii, procentaje) i gruparea lor dup anumite criterii (exista funcii specializate pe aceste calcule) - Actualizarea datelor din tabele care stau la baza interogrii
Construire expresii
Operator * + / \ ^ Mod
Operaie nmulire Adunare Scdere mprire mprire ntreag Ridicare la putere Modulo
MACHETA (Form Formular) este un obiect Access destinat introducerii datelor ntr-o aplicaie de baze de date. n plus macheta este i un mijloc pentru vizualizarea datelor dintr-o nregistrare a unui tabel sau din setul dinamic rezultat al unei interogri. Afiarea in acest caz se face ntr-o form asemntoare unui formular tiprit pe hrtie. Folosind machetele putem s efectum n mod elegant operaiile tipice din bazele de date: vizualizarea, adugarea, modificarea i eliminarea datelor.
n consecin se poate spune c macheta constituie principalul mijloc de interfaare dintre aplicaie i utilizator. Machetele sunt alctuite dintr-un cadru prevzut cu diferite elemente pentru facilitarea operrii asupra datelor. Elementele care alctuiesc machetele poarta numele de controale. Controalele sunt grupate in seciuni care sunt diviziunile principale ale unei machete. Pentru proiectarea unei machete trebuie s determinm ce date intr n aplicaie (baza de date, cu ajutorul cror controale vom realiza aceast introducere, cum amplasm controalele n cadrul machetei, ce aspect vor avea acestea i cum va funciona macheta.
Un formular este compus din trei pri: antetul, zona de detaliu i subsolul:
ntr-un formular se pot plasa cmpuri calculate pe baza unor expresii. Plasarea expresiilor n controalele aflate pe un formular sau subformular se realizeaz prin scrierea acestora n proprietatea Control Source a unui control. Scrierea unei expresii se poate face asistat (Expression Builder) sau prin scriere direct. Dac se utilizeaz scrierea unei expresii n modul neasistat, aceasta trebuie precedat de semnul egal (=expresie). Expresiile pot conine orice funcie Access sau funcii definite de utilizator, referiri ctre controale aflate pe alte formulare (deschise) etc.
Expresiile plasate n formulare/subformulare pot fi grupate n: - expresii simple
RAPORTUL este un obiect al unei baze de date Access pe care-l folosim pentru prezentarea datelor dintr-unul sau mai multe tabele i a rezultatelor prelucrrilor efectuate asupra lor. n plus rapoartele ne permit prezentarea unor informaii care nu sunt memorate n tabele. n funcie de necesiti putem s obinem i s prezentm informaii de sintez prin ordonarea, gruparea i totalizarea datelor. n acest fel, putem s obinem totaluri pe grupe, pe subgrupe i totaluri generale. De asemenea, putem s obinem etichete potale tiprite sau s includem subrapoarte ntr-un raport.
Rapoartele pot fi obinute sub forma unor documente afiate pe ecranul consolei, tiprite pe hrtie la imprimant sau salvate ntr-un fiier pe disc.
Pentru mbuntirea calitii prezentrii ntr-un raport se pot folosi diferite controale i obiecte grafice. Toate tehnicile pentru crearea i particularizarea machetelor sunt valabile i la definirea rapoartelor. De asemenea, n cadrul unui raport putem s formatm datele folosind stiluri, formate pentru prezentarea valorilor i atribute de formatare inclusiv prezentri grafice. O astfel de prezentare grafic a datelor poart numele de diagram.
Ca i n cazul altor obiecte ale bazei de date Access un raport trebuie neles ca fiind alctuit din doua tipuri de informaii: de structur i datele propriu-zise. n consecin un raport odat creat va putea fi refolosit ca un cadru pentru tiprirea datelor curente.