Documente Academic
Documente Profesional
Documente Cultură
POSDRU/144/6.3/S/128914
Suport de curs
OPERATOR INTRODUCERE, VALIDARE SI PRELUCRARE DATE
MODULUL 7
1
Pentru a asigura unicitatea, valorile unuia sau mai multor atribute ale entităţii trebuie să fie
diferite de valorile corespondente ale celorlalte entităţi În exemplul de mai sus, utilizarea
codului numeric personal (CNP) asigură identificarea unică a unei persoane.
Entităţile mai sunt numite şi entităţidate , obiecte date, apariţii de date sau apariţii .
Aceste reprezentări ale entităţilor devin tabele. Tabela este definită ca un produs cartezian
dintre mai multe domenii, caracterizată prin un nume având date despre un anumit subiect.
De exemplu, un tabel în care este descrisă entitatea angajat, cu atributele: nume, data
angajarii, studii, functia, departamentul la care este angajat, conţine rânduri sau înregistrări
pentru fiecare angajat în parte.
O înregistrare este compusă din câmpuri care sunt constituite din atributele necesare pentru
entitatea descrisă (aici angajat).
Noţiunea de atribut, caracteristică a unei entităiţ , este denumită în terminologia bazelor de
date câmp. Atributul defineşte o latură a entităiiţ (relaţiei ) şi ia valori într-un domeniu asociat.
Fiecare atribut este caracterizat prin valorile pe care le ia şi contribuie la identificarea entităţii
al cărei parte este şi la deosebirea ei de celelalte entităţidin aceeaşi clasă.
Valoarea atributului este cea mai mică unitate de date dintr -o entitate. Valorile atributelor nu
pot fi decât cele cuprinse în domeniul atributului. Alte denumiri ale valorii atributului sunt
valoarea celulei şi valoare datelor.
Un rând
reprezintă o
înregistrare
a tabelei
2
O bază de date reprezintă o colecţie de date care sunt achiziţionate cu un anumit scop şi
într-o structură specifică şi trebuie să îndeplinească următoarele condiţii:
- să asigure o independenţă sporită a datelor faţă de programe;
- să asigure informaţiile necesare şi suficiente scopului propus;
- să se asigure o redundanţă minimă (informaţii care nu se repetă);
- să permită accesul rapid la informaţiile stocate în baza de date.
Arhitectura bazelor de date se referă la componentele acestora şi cuprinde:
- baza de date propriu-zisă în care se memorează datele;
- sistemul de gestiune al bazei de date care realizează gestiunea şi prelucrarea
complexă a datelor.
1.4. Relaţiile între tabelele unei baze de date
O bază de date este formată din mai multe tabele cu legături între ele.
Stabilirea relaţiilor între tabele are în vedere îndeplinirea condiţiilor pe care o bază de date
trebuie să le îndeplinească în vederea prelucrării datelor din mai multe tabele.
În proiectarea unei baze de date este importantă stabilrea obiectelor reprezentate în baza de
date şi proprietăţile care vor fi incluse; această operaţie este denumită modelarea datelor.
Scopul unui model de date este de a crea o reprezentare logică a structurii de date utilizată
la crearea bazei de date. Realizarea unui model de date presupune:
determinarea structurii modelului:
- definirea obiectelor (entităţilor) şi a proprietăţilor asociate - atribute
- stabilirea relaţiilor între obiecte; se materializează printr-o legătură între o realizare a
înregistrării dintr-un tabel numit părinte şi una sau mai multe realizări ale înregistrării
unui alt tabel nummit fiu. Legătura între obiecte (entităţi) poartă numele de relaţie sau
asociere. Între tabelele unei baze de date sunt trei tipuri de relaţii:
(1) unu la unu (one to one) sau 1 1; unei întregistrări dintr-un tabel îi corespunde
prin relaţia stabilită o singură înregistrare în tabelul asociat.
De exemplu, între tabelul “Angajati” şi tabelul „Salarii” se stabileşte o relaţie tip
unu-la-unu sau 1:1, un angajat are la un anumit moment un salariu; în tabelul
salarii există o singură înregistrare pentru salariul angajatului. De multe ori acest
tip de relaţie este privit şi ca o împărţire a unui tabel în două tabele asociate din
raţiuni de securitate (drepturi de acces) diferit pe anumite câmpuri.
(2) unu la mai mulţi (one to many) sau 1n; unei înregistrări dintr-un tabel (părinte) i
se pot asocia mai multe înregistrări din tabelul asociat (fiu); înregistrarea din
tabelul fiu se asociază cu o singură înregistrare din tabelul părinte. De exemplu,
într-o organizaţie, un departament are mai mulţi angajaţi, un angajat este
repartizat unui singur departament, este relaţie de tip 1:n, structură de tip
arborescent sau unei înregistrări din tabelul clienţilor i se pot asocia multe
înregistrări din tabelul conturilor iar un cont aparţine doar unui client.
(3) mulţi la mulţi (many to many) sau mn; unei înregistrări dintr-un tabel părinte i
se pot asocia mai multe înregistrări din tabelul cu care se află în relaţie, tabelul fiu.
Pe de altă parte, unei înregistrări din tabelul fiu i se pot asocia mai multe
înregistrări din tabelul părinte; este o structură de tip reţea.
Exemple de relaţii mulţi la mulţi: un produs este achiziţionat de mai mulţi furnizori
şi un furnizor poate oferi mai multe produse pentru a fi achiziţionate; un salariat
colaborează la mai multe proiecte iar la un proiect mai mulţi salariaţi colaborează.
3
stabilirea operatorilor care acţionează asupra structurii de date; pot fi operatori de citire,
memorare, modificare, joncţiune etc.
stabilirea unor restricţii în vederea menţinerii integrităţii datelor care sunt numite şi reguli
de integritate menite să asigure corectitudinea datelor pentru menţinerea unei structuri
coerente.
1.5. Baze de date relaţionale
O bază de date relaţională are la bază modelul relaţional, adică este alcătuită din unul sau
mai multe tabele organizate ierarhic, între care s-au stabilit anumite relaţii. Relaţiile între
două tabele sunt unidirecţionale, astfel că o tabelă devine principală, iar cealaltă devine
subordonată.
Pentru desemnarea unei structuri relaţionale de tabele se va utiliza noţiunea de bază de
date relaţională. Noţiuni de bază în baze de date relaţionale:
- Cheia primară este constituită dintr-un atribut (coloană din tabel) ale cărui valori
identifică în mod unic un rând (o înregistrare) dintr-o tabelă de bază. Pentru orice valoare a
cheii primare corespunde un rând şi numai unul în tabel. Cheia compusă (concatenată) se
creează atunci când cheia primară este compusă din mai multe câmpuri care asigură
unicitatea; de exemplu numărul şi data unei facturi.
- Cheia candidată este o coloană (un atribut) care îndeplineşte condiţiile cerute
pentru a deveni cheie primară (CNP din tabelul salariaţilor cu cheia primară numărul din
registrul salariaţilor).
- Cheia externă este o coloană ale cărei valori corespund celor conţinute de cheia
principală sau de porţiunea cea mai din stânga a unei chei compuse dintr-o tabelă asociată.
O cheie externă poate fi constituită dintr-o coloană sau un grup de coloane.
Tabele specifice bazelor de date relaţionale:
- Tabela de bază (principală) este o tabelă care conţine una sau mai multe coloane
ce conţin proprietăţile unui obiect şi o coloană sau grup de coloane, numită cheie primară,
care identifică în mod unic obiectul entitate date. O bază de date relaţională poate avea una
sau mai multe tabele principale.
- Tabela de relaţii (relationships) este o tabelă utilizată pentru a stabili relaţiile între
tabela (sau tabelele) de bază şi tabele secundare. Fiecare câmp cheie din tabela de relaţii
trebuie să fie o cheie externă asociată unei chei principale din tabela de bază.
1.6. Sistem de gestiune a bazelor de date (SGBD)
Sistemul de Gestiune a Bazei de Date, prescurtat SGBD (DBMS – Database Management
System) , reprezintă colecţia de programe şi proceduri care asigură: definirea bazei de date,
încărcarea datelor în baza de date, accesul la date (interogare, actualizare), întreţinerea
bazei de date, securitatea datelor, reorganizarea bazei de date.
Sistemul de gestiune a bazelor de date ajută utilizatorul să organizeze logic datele într-o
bază de date, accesul şi utilizarea informaţiilor din baza de date.
Obiectivele unui SGBD:
1. asigurarea independenţei datelor (modificarea structurii de memorare sau a strategiei
de acces la date să nu afecteze şi aplicaţia);
2. asigurarea unei redundanţe minime (datele să nu se repete);
3. sporirea gradului de securitate (interzicerea accesului neautorizat);
4. asigurarea integrităţii datelor (protecţia la ştergeri nepermise, proceduri de validare);
5. asigurarea proprietăţii de partajare a datelor (asigurarea accesului mai multor
utilizatori la aceleaşi date).
4
Funcţiile unui SGBD :
- Funcţia de descriere a datelor – permite definirea structurii bazei de date cu ajutorul
limbajului de definire a datelor. La nivelul acestei funcţii se descriu atributele (câmpurile)
din cadrul structurii bazei de date, legăturile dintre entităţile bazei de date sau dintre
atributele aceleiaşi entităi.ţ
Se definesc criterii de validare a datelor, metodele de acces la date, aspectele
referitoare la asigurarea integrităiiţ şi confidenţialităţii.
- Funcţia de gestionare a datelor – permite crearea (încărcarea) bazei de date,
adăugarea de no i înregistrări, ştergerea unor înregistrări, modificarea valorilor
corespunzătoare unor câmpuri, căutarea, sortarea unor înregistrări.
- Funcţia de utilizare - asigură comunicarea utilizatorilor cu baza de date. Categoriile de
utilizatori:
- conversaţionali (beneficiari de informaţii) - utilizează limbajele de interogare a bazei
de date într-o formă simplistă;
- programatori - realizează proceduri de exploatare a bazei de date;
- administratorul bazei de date - alocă drepturi şi asigură funcţionarea optimă a
sistemului.
1.7. Componentele software ale unui sistem de gestiune a bazei de date:
1. Nucleul SGBD
2. Subsistem de definire a datelor
3. Subsistem de manipulare a datelor
4. Subsistem de generare a aplicaţiilor
5. Subsistem de administrare a datelor
5
Capitolul 2
Prezentare Microsoft Office Access 2010
Microsoft Access 2010 este un program puternic de baze de date relaţionale care conţine
sute de instrumente care pot fi folosite pentru proiectarea rapidă, partajarea şi raportarea
informaţiilor, chiar pentru utilizatorii cu mai puţină experienţă (sau chiar deloc) în dezvoltarea
bazelor de date.
Access suportă partajarea datelor cu alte surse de date incluzând alte programe Microsoft
Office 2010, Microsoft SQL Server, Serviciile Windows Share Point şi documente în XML,
HTML, XPS şi formate PDF. Funcţiile avansate ale programului permit crearea programelor
executabile pentru aplicaţiile bazei de date pe care alte personae decât proiectantul bazei de
date o pot folosi.
Microsoft Access stabileşte relaţii între categorii diferite de informaţii confo rm cerinţelor
utilizatorului şi prezintă metode flexibile de introducere, organizare şi prelucrare a datelor,
fiind unul dintre cele mai bune SGBDR disponibile pentru calculatoare personale,
recomandat pentru proiecte cu volum de date de mai mici dimensiuni, pentru un singur
utilizator dar şi pentru baze de date distribuite , de tip client /server, cu mai mulţi utilizatori.
Funcţi ile de bază ale Microsoft Access:
organizarea datelor în tabele,
legarea tabelelor şi extragerea datelor - relaţii, interogări, expresii
introducerea şi editarea datelor - formulare
prezentarea datelor – rapoarte, diagrame
Funcţii le suport :
Macrocomenzi
Module program
Securitatea datelor
Importul/exportul datelor
6
O bază de date Access 2010 bine proiectată poate manipula sute de mii de înregistrări fără
un efort prea mare prin şabloanele şi instrumentele puternice îmbunătăţite pe care le pune
laa dispoziţia utilizatorului. În cazul în care baza de date devine prea mare, Access asigură
interfaţa cu sistemele de operare cu servere de baze de date care rulează programe ca
Oracle sau SQL Server.
Funcţiile avansate ale programului permit crearea programelor executabile pentru aplicaţiile
bazei de date care se poate folosi într-o organizaţie, fără ca cel ce proiectează să ştie foarte
multe lucruri despre dezvotarea bazelor de date.
Principalele caracteristici ale Microsoft Access sunt:
interfaţă grafică ce permite utilizatorului un acces uşor şi rapid la date;
mecanisme puternice de interogare a bazelor de date;
facilităţi pentru realizarea formularelor şi rapoartelor;
şabloane şi programe ajutătoare (de tip Wizard), pentru a uşura munca
programatorului;
comunicarea cu alte SGBD.
2.1. Prezentarea aplicaţiei Microsoft Access 2010
Interfaţa utilizator a aplicaţiei Microsoft Access 2010 (Office Fluent, impus din versiunea
Office 2007) se bazează pe un mod intuitiv şi rapid de accesare a comenzilor pentru
executarea unei activităţi. Ribonul (panglica) este elementul de noutate ce asigură în
principal comunicarea utilizatorului cu programul.
Ribonul înlocuieşte meniurile, comenzile sunt grupante în funcţie de tipul acestora
precum şi tipurile de obiecte care fac obiectul acestor comenzi. În partea de jos a
fiecărui grup este înscris numele acestuia, .
Pe ribon sunt plasate butoanele de comandă asociate tuturor operaţiilor pentru
crearea şi modificarea obiectelor bazei de date, personalizarea, lucrul cu datele şi
pentru toate funcţiile de bază şi suport.
Riboane de context cu numele grupului contextului sunt afişate dacă un obiect este
selectat şi necesită comenzi suplimentare; de exemplu Form Design Tools.
Riboanele pot fi minimizate (dublu click pe un tab) şi readuse la dimensiunea
normală cu dublu click pe un tab sau click pe butonul minimize/maximize ribon.
Riboane afişate permanent: Home, Create, External Data, Database Tools.
Alte elementele ale ferestrei aplicaţiei Microsoft Access 2010
Bara de titlu şi butoanele de închidere a aplicaţiei
Bara de acces rapid, Quick Access Toolbar, conţine
comenzile cele mai des utilizate, de obiectul care este activ:
Save, Undo, Redo şi buton listă de personalizare a comenzilor de pe bară.
Click pe butonul de personalizare deschide lista comenzilor care mai pot fi adăugate
(sau scoase) de pe bara de acces rapid: New, Open, E-mail, Print Preview etc.
Meniul File (numit şi Backstage – comenzi de culise) prezintă comenzi pentru
personalizarea mediului de lucru, lucrul cu fişierele bazei de date: salvarea obiectelor
bazei de date şi a bazei, salvare şi publicare pe web a unei baze de date,
deschiderea unei baze, afişează o listă cu cele mai recente baze de date deschise.
7
Opţiunile pentru personalizarea bazei de date sunt: opţiuni
generale ce se aplică tuturor bazelor de date deschise sau
create în aplicaţia Access, pentru baza de date curentă, modul
de lucru cu tabelele de date, opţiuni pentru proiectarea
obiectelor, opţiuni de limbă şi dicţionar de corectare ortografică,
personalizarea barelor de butoane – riboane sau bara de acces
rapid.
O mare importanţă o prezintă opţiunile care se referă la
asigurarea securităiiţ bazei de date, drepturi de acces la date –
Trust Center.
Spre deosebire de unele medii de programare, Microsoft
Access consideră o bază de date ca un singur fişier Windows
cu un nume şi locaţie pe suportul de stocare . Acest fişier poate
conţine diferite obiecte care fac de fapt, o bază de date .
Prin urmare, o bază de date Microsoft Access este deschisă ca
un fişier obişnuit ce conţine toate obiectele proiectate ale bazei
de date.
Mediul de lucru a aplicaţiei Acces conţine elementele necesare proiectării şi
gestionării tuturor tipurilor de obiecte ale bazei de date.
Fereastra de lucru
Zona de tab-uri
Panou de navigare
8
Alte criterii de grupare ar putea fi: Tables and related Views – tabele şi obiecte
associate, Created/Modified Date – după data de creare/modificare a obiectelor.
Obiectele bazei de date pot fi afişate toate sau doar unele, în funcţie de criteriul de
filtrare aplicat în lista Filter by Group. În exemplul de mai jos sunt afişate toate
obiectele; filtrul se aplică pe categorii de obiecte (tabele sau interogări, etc.) .
Buton pentru
ascundere
panoului de
navigare
Buton pentru afişarea
listei de opţiuni de
personalizarea panoului
de navigare
Butoane pentru
expandarea (sau
restrângerea) grupului
de obiecte
9
2.2. Organizarea comenzilor în programul Access
Ribonul Home – în partea stângă View (Shotcut Toolbar) – bara de butoane de comutare a
vizualizării pentru obiectul activ din baza de date apoi grupuri de comenzi pentru lucrul cu
datele în modurile de afişare Datasheet: filtrare, sortare, căutare şi înlocuire, clipboard.
Ribonul Create – comenzi grupate pentru crearea obiectelor în mai multe moduri,
prezentând butoane specifice pentru fiecare mod în parte; tipul de obiect ce poate fi creat
are un grup de comenzi cu acelaşi nume: tabele (grupul Tables), interogări (grupul Queries),
formulare (grupul Forms), rapoarte grupul (Reports), macro şi module de program(grupul
Macros&Code).
Ribonul External Data - comenzi pentru salvarea, importul, legarea şi exportul datelor,
crearea documentelor asociate; grupurile de comenzi sunt asociate acestor operaţii:
Import&Link, Export, Collect Data.
Ribonul Database Tools - instrumente pentru manipularea obiectelor bazei de date, cele
mai importanete fiind definirea relaţiilor şi modurilor de asociere între tabele, compactarea
datelor şi reparareaa bazei de date, replicare şi crearea unor formulare de start şi
gestionarea aplicaţiei de baze de date.
10
2.3. Obiectele unei baze de date relaţionale Access
Tabele (Tables)
Tabele (Tables) sunt foile de calcul tabelar ale bazei de date care
organizează datele pe linii şi coloane (similar cu Excel), în care sunt
stocate toate datele din baza de date Access. Programul Access îşi
construieşte propriile tabele pentru stocarea datelor de tip informaţii
despre obiectele bazei şi relaţiile dintre acestea.
La crearea unui nou tabel, se cere definirea câmpurilor acestuia,
atribuind fiecărui câmp o denumire unică, tipul şi dimensiunea datelor
pe care acesta le va conţine, proprietăţi de integritate şi validare.
Modurile de lucru cu tabele şi comenzile de pe butonul corespunzător
de pe View Shotcut Toolbar:
Datasheet View - afişarea datelor din tabel şi lucrul cu datele: introducerea
înregistrărilor, modificarea datelor, sortarea, filtrarea, ştergerea înregistrărilor
Pivot Table View – afişarea datelor în format tabelă pivot în funcţie de opţiuni de
pivotare
Pivot Chart View – afişarea unor date selectate ca diagramă
Design View – proiectarea tabelului: definirea câmpurilor, proprietăţile câmpurilor,
reguli de validare şi formate, definirea câmpurilor cheie primară şi indecşi
Interogări (Queries)
Scopul pentru care se crează şi se foloseşte o bază de date constă în extragerea rapidă a
datelor care interesează, pe baza legăturilor şi asocierilor care s-au făcut între tabele.
Interogarea (query) este o definire a înregistrărilor care se vor extrage din tabele la un
anumit moment: ce câmpuri, din care tabele, corespunzător căror criterii, în ce ordine de
afişare etc, în funcţie de scopul propus.
Interogările (Queries) constituie cereri adresate tabelelor pentru
extragerea sau organizarea datelor în vederea afişării lor. Interogările
sunt proiectate cu ajutorul unei interfeţe grafice accesibile (QBE - query
by exemple) şi sunt memorate în limbajul SQL (Structured Query
Language).
Este cel mai puternic instrument de prelucrare a datelor din tabele
corelate. Se pot interoga mai multe tabele care sunt relaţionate prin
câmpuri cheie, permiţând şi editarea datelor afişate într-o interogare.
Modurile de lucru cu interogările şi comenzile de pe butonul
corespunzător de pe View Shotcut Toolbar:
Data Sheet View - afişarea înregistrărilor rezultate în urma
cererii de extragere formulată în interogare
Pivot Table View – afişarea unor date rezultate din interogare
sub formă de tabel pivot
Pivot Chart View – afişarea datelor rezultate ca diagramă
SQL View – traducerea cererii de extragere a datelor formulată în proiectarea
interogării în limbaj SQL - Structured Query Language - limbaj structurat de
interogare cu care lucrează aplicaţiile de baze de date.
11
Formulare (Forms)
Formularele (Forms) oferă o interfaţă pentru introducerea şi
modificarea datelor în bazele de date sau doar afişarea pe ecran a
datelor introduse în tabele. Formularele pot conţine subformulare
pentru a afişa datele asociate şi butoane specifice pentru a realiza
anumite sarcini.
Într-o bază de date se pot proiecta formulare cu obiecte de control care
pot realiza declanşarea acţiunilor şi derularea activităţilor cu toate
obiectele bazei de date.
Formularele permit selecţii ale câmpurilor după mai multe criterii. Un
formular bine proiectat măreşte viteza de introducere a datelor şi
minimizează erorile de tastare şi de integritate a datelor.
Modurile de lucru cu formularele şi comenzile de pe butonul
corespunzător de pe View Shotcut Toolbar:
Form View – formatul de execuţie ce constituie interfaţa
utilizatorului cu datele din obiectul asociat – tabel sau interogare
şi declanlarea unor acţiuni.
Data Sheet View - afişarea înregistrărilor tabelului sau interogării asociate.
Pivot Table View – afişarea unor date din tabelul sau interogarea asociată sub formă
de tabel pivot
Pivot Chart View – afişarea datelor din tabelul sau interogarea asociată diagramă
Layout Viev – format în care se pot aplica modificări de aspect a formularului
Design View – proiectarea formularului: definirea obiectelor, proprietăţi, structură etc.
Rapoarte (Reports)
Rapoartele (Reports) sunt folosite pentru a extrage datele din tabele (de
cele mai multe ori bazate pe interogări) şi a le afişa în vederea difuzării.
Într-un raport, datele pot fi organizate în grupuri şi se pot realiza sinteze şi
formule de calcul.
Modurile de lucru cu formularele şi comenzile de pe butonul
corespunzător de pe View Shotcut Toolbar:
Report View – vizualizarea rezultatului proiectării raportului pe
ecran în vederea alegerii unui mod de difuzare a acestuia
Print preview – previzualizarea raportului pe o pagină pregătită
pentru imprimare.
Design View – proiectarea raportului: definirea obiectelor asociate,
proprietăţi, structură, grupuri, formule de calcul etc.
Macrocomenzi (Macros)
Macro (Macros) sau macrocomenzi, sunt succesiuni de comenzi executate de Access
pentru a automatiza anumite operaţii. Secvenţa este realizată prin selectarea comenzii din
listă derulantă de acţiuni disponibile şi introducerea detaliilor pentru operaţiunea respectivă.
Module (Modules)
Modulele (Modules) sunt subrutine sau funcţii scrise în Visual Basic for Application (VBA),
limbajul de programare folosit în toate aplicaţiile Microsoft Office.
12
2.4. Operaţii cu baze de date Access
Deschiderea aplicaţiei de baze de date Access
(1) Start – All Programs- Microsoft Office – Microsoft Access 2010 sau
(2) click pe pictograma de pe desktop sau din lista de aplicaţii, deschide fereastra de pornire
a programului Microsoft Access 2010.
Se deschide:
(1) o bază de date nouă pe baza unui şablon selectat din galeria de şabloane pusă la
dispoziţia utilizatorului Available Template,
(2) o bază de date nouă fără şablon Blank Databse sau
(3) click pe butonul Open se deschide o bază de date existentă.
Crearea unei baze de date fără şablon
În meniul File – New, click pe butonul Blank database şi apoi click pe Create.
Se completează numele bazei de date în caseta File name, click pe butonul de selectaare a
locaţiei în care se va salva (unitate, folderul respectiv subforderul) şi click butonul Create.
Se deschide fereastra pentru crearea unei baze de date cu activarea fereastrei de
introducere a datelor într-un nou tabel. Se introduc date în tabel la fel cum se procedează în
tabele Excel.
13
să nu fie spaţii, delimitarea unor cuvinte se va face cu caracterul underscore (liniuţa de jos).
Dacă baza de date nu a fost salvată în fereastra de deschidere, se procedează la salvarea
acesteia.
Pentru salvarea bazei de date se accesează meniul File şi
comanda Save Database As. Se închid toate obiectele
deschise şi se declanşează salvarea bazei de date.
Se definesc: locaţia de stocare – disc hard, folder / subfolder,
numele bazei de date, tipul fişierului este .accdb
Toate obiectele bazei de date: tabele, formulare, interogări, rapoarte, module macro sunt
salvate într-un singur fişier cu structura definită şi recunoscută de aplicaţia Microsoft Access,
extensia .accdb este acceptată de versiunile 2007 şi 2010.
Deschiderea unei baze de date existente
Click pe butonul Open din meniul File sau dublu click pe numele fişierului.
...................
Tipurile de fişiere de baze de date care se pot deschide sunt baze de date create în
versiunile Access 2007 şi 2010 dar şi din Access 2003, cu extensia .mdb.
Închiderea unei baze de date
Se poate închide o bază de date Acces fără a închide aplicaţia selectând din meniul File
14
Capitolul 3
Tabele în baze de date Access
Categorii de informaţii
De regulă, prin introducerea datelor într -un câmp, Access recunoaşte tipul de dată
şi îl memorează. Pentru modificări ale proprietăilor
ţ , inclusiv pentru tipul de data,
se comută afişarea tabelului în Design View - click pe butonul în grupul View.
Deoarece tabelul este obiect principal al unei baze de date, atunci când se crează
un tabel este completat în secţiunea Tables din Panoul de navigare.
2 ) Crearea unui tabel în modul proiectare - Table Design
De pe ribonul Create, grupul Tables se selectează comanda Table Design; se
afişează grila de proiectare a tabelului. Grila conţine: zona de definire a câmpurilor şi
zona proprietăţilor : numele câmpurilor, tipurile de date, forma de afişare, proprietăile
ţ
câmpurilor, reguli de validare etc.
15
În modul Design View se pot adăuga sau şterge câmpuri sau se pot modifica
proprietăile.
ţ
câmpurilor
Definirea
16
Date Tipul datelor Descrierea tipului datelor
Memo Cel mult 64.000 caractere (nu poate fi câmp
cheie) şi sunt utilizate pentru a oferi comentarii
descriptive. Datele din aceste câmpuri sunt
incluse în tabelă şi afişate în modul Design View.
Numerice Number Include mai multe subtipuri care diferă prin modul
de stocare şi viteză de răspuns.
Se alege subtipul corespunzător selectând unul
din parametrii proprietăţii Field Size din panoul
proprietăţilor
AutoNumber Conţine o valoare numerică Long Integer pe care
Access o incrementează cu 1 sau cu un număr
generat aleator, în funcţie de parametrul ales al
proprietăţii New Values: Increment sau Random.
Yes/No Câmpuri logice (nu pot fi câmpuri cheie, dar pot fi
indexate), folosesc valorile logice True/False
respectiv numerice –1/0.
Currency Format numeric special, fix, tip valută, asigură
precizie sporită calculelor financiare (4 zecimale).
Date calendaristice Date/Time Datele calendaristice şi ora sunt stocate într-un
format fix; formatul definit în panoul Properties.
Obiecte mari Object OLE Include elemente grafice realizate din puncte
(bitmap), desene vectoriale, fişiere cu semnale
audio, alte tipuri de date care pot fi create de o
aplicaţie OLE server. Nu poate fi câmp cheie şi
nu poate fi inclus în index.
Adrese Hyperlink Este un text sau o combinaţie de text cu numere
stocată ca un text şi folosită ca adresa unei pagini
Web sau adresa e-mail
Format derivat Calculated Este un format nou, în Access 2010 ! Se obţine
prin aplicarea unei formule sau funcţii. Valorile
câmpului nu pot fi introduse prin tastare, doar prin
aplicarea formulei sau funcţii definite.
Exemple: data naşterii sau a sexul unei persoane
calculate din datele câmpului CNP.
Informaţii legate Lookup Wizard Creează câmpuri care permit utilizatorului să
aleagă valori alte tabele sau listă de valori.
Tipul de date de Number este, de regulă, atribuit unui câmp care va face în cursul
prelucrărilor din baza de date obiectul unor operaţii de calcul matematic; câmpurile
care conţin cifre dar nu vor face obiectul unor calcule vor fi declarate de tip text.
Tipul AutoNumber este deosebit de util atunci când se doreşte asigurarea unicităţii
înregistrărilor dintr-un tabel în care nu există un alt câmp care să asigure unicitatea
înregistrării în tabel (cheie primară).
Lookup Wizard nu este un alt tip de câmp; reprezintă o metodă convenabilă de
completare a datelor într-un câmp prin căutarea informaţiei într-o listă definită la
proiectarea câmpului sau în alt tabel existent. Este o modalitate uşoară de
introducere care asigură consistenţa şi corectitudinea datelor.
17
Exemplu: introducerea tipului de dată pentru un câmp al tabelului Angajati în care se
introduce tipul studiilor; se va crea o listă cu intrările: medii, superioare, master,
doctorat. Mod de lucru:
1. În Field Name se introduce numele câmpului; exemplu: Studii
2. Se alege din lista Data Type – Lookup Wizard
18
Format – permite alegerea unui anumit tip de format standard aplicabil tipului de date
ales (exceptând Text), în care vor fi afişate valorile din câmpuri. Această proprietate de
configurare afectează doar modul de afişare al datelor nu şi valorile lor.
o Number (valori numerice): cu
separator zecimal, separator
de mii, semn monetar, format
ştiinţific
19
Simbolurile care pot fi folosite la construirea măştilor de intrare pentru tip Text:
Caption (etichetă) - este eticheta câmpului afişat de Access în Datasheet View sau
numele controlului în formularul de introducere sau de afişare a datelor din tabel.
Dacă această proprietate nu este completată, numele câmpului este eticheta.
Default Value - (valoarea implicită). Valoarea implicită din acest câmp, este cea pe
care Access o introduce automat în câmp la adăugarea unei noi înregistrări.
Valoarea implicită poate fi modificată.
Validation Rule – (regula de validare)
este un criteriu de verificare a valorilor
introduse într-un câmp. Regula se
introduce sub forma unei funcţii
logice, o expresie sau o valoare cu
care se compară datele introduse.
Operatorii logici din expresii sunt: =, <
20
Datele care nu îndeplinesc regula de validare sunt respinse şi utilizatorul este
anunţat printr-un mesaj.
Validation text: mesajul de eroare personalizat care se afişează dacă valoarea
introdusă nu îndeplineşte criteriul de la Validation Rule.
Reguli de validare complexe pot fi introduse prin proprietăţile controlului din
formularul de introducere a datelor în formular.
Required – (cerut) cu valori posibile Yes sau No; se alege Yes dacă valorile din
acest câmp nu pot lipsi din înregistrare, câmpurile cu “yes” sunt obligatorii. Valoarea
„No” este pentru câmpuri cu valori opţionale.
Allow Zero Length – (permite lungime zero), se aplică numai câmpurilor de tip Text
şi Memo. Ca valoare implicită este No.
O valoare nulă indică faptul că nu se ştie nimic despre conţinutul unei înregistrări
dintr-un anumit câmp, nu a fost completat; valoarea zero indică o valoare numerică
cu valoare zero, deci cunoscută.
Cele două valori nu trebuie confundate, de exemplu un câmp dată calendaristică sau
dată de tip text poate avea valoare Null.
Indexed – (indexat). Câmpurile cu proprietatea index asigură mecanismul de
regăsire rapidă a datelor şi de sortare a înregistrărilor.
Câmpurile index pot fi de două tipuri:
1) care permit valori identice în câmpul tabelului, de tipul Yes, Duplicate OK, sau
2) nu admit valori identice în acel câmp Yes, No Duplicates (exemplu: codul
numeric personal (CNP). Câmpul cheie primară este în mod implicit şi index,
fără a avea valori duplicate.
Câmpurile de tip Memo sau OLE Object nu pot fi indecşi.
New Values – (valori noi) se aplică numai câmpurilor de tip AutoNumber şi poate
avea două proprietăţi care se aleg din listă: Indexed sau Random, indicând modul de
generare a valorilor unice şi anume prin crearea unei serii incrementale cu pasul 1
sau generarea de numere aleatoare unice într-o serie.
3.5. Câmp cheie primară
Ansamblul minim de atribute care identifică în mod unic orice înregistrare dintr-un tabel
reprezintă cheia primară a tabelului şi constituie baza pentru crearea relaţiilor între tabelele
bazei de date.
Cheia primară poate fi simplă, formată dintr-un singur atribut sau câmp (exemplu: numărul
matricol în registrul salariaţilor) sau compusă, formată din mai multe atribute (exemplu:
numărul facturii şi data emiterii).
Proprietăţile câmpului (câmpurilor) cheie primară:
Identifică în mod unic, fără echivoc înregistrările din tabelă
Întotdeauna conţine valori, nu este nul şi se modifică rareori (în mod ideal, niciodată)
Într-o tabelă pot exista mai multe câmpuri care îndeplinesc aceste condiţii de cheie primară
şi se numesc chei candidate. Dintre cheile candidate se alege doar una pentru a fi cheie
primară, considerată reprezentativă în contextul datelor.
Definirea unui câmp cheie primară:
1) Se deschide tabelul în Design View şi se selectează câmpul
2) Din meniul context Design - Table Tools click pe butonul Primary Key
21
3) Pentru cheie primară compusă din mai multe câmpuri selecţia multiplă se face cu
tasta CTRL apăsată în timpul selecţiei apoi click butonul Primary Key;
4) Simbolul cheii este afişat pe butonul de selecţie a l câmpului (câmpurilor).
Odată ce a fost definită cheia primară într-un tabel, aceasta poate fi utilizată în alte tabele
pentru a face referiri înapoi la tabelul cu cheia primară; câmpul astfel introdus în tabelul
secundar se numeşte cheie externă.
O cheie externă, enunăţ că este cheia primară a unui alt tabel şi constituie un câmp de
legătură între două tabele .
22
3.6. Relaţiile între tabele
Stabilirea relaţiilor între tabele – cerinţe şi restricţii
Trebuie să existe măcar un tabel din relaţie cu câmp cheie primară
Câmpurile de legătură nu trebuie să aibă neapăr at același nume, deși acest lucru se
întâmplă deseori dar trebuie să aibă acela și tip de date.
În cazul în care câmpul cheie primară este un câmp de tip AutoNumber, câmpul
cheie externă trebuie să fie un câmp Number,
Access nu poate crea relaţii între tabele deschise; tabelele trebuie să fie închise
înainte de deschiderea ferestrei de creare a relaţiilor .
1. Fereastră grafică numită Relationship se deschide cu click butonul de pe ribonul
Database Tools pentru crearea şi afişarea relaţiilor între tabelel e bazei de date.
3
4
6
23
7
Tipul relaţiei unu -la-mulţi Restricţii de integritate Legătura ilustrată grafic între cele
cheie primara – cheie externa referenţială a relaţiei două tabele
În funcţie de tipurile de câmpuri din tabelele între care se stabilesc relaţii, acestea pot fi:
unu-la-unu sau 1 1 relaţie stabilită între cheile primare ale celor două tabele principale;
unei înregistrări din tabel ul principal i se asociază o singură înregistrare din tabelul
secundar.
unu-la-mulţi sau 1 n relaţie stabilită între cheia primară a tabelului principal şi cheia
externă a tabelului secundar; unei înregistrări din tabel ul principal i se asociază mai multe
înregistrări din tabelul secundar.
mulţi -la-mulţi sau m
n relaţie stabilită între două tabele prin care unei înregistrări din prima
tabelă i se asociază mai multe înregistrări din a doua tabelă dar şi u nei înregistrări din a
doua tabelă corespund mai multe înregistrări din prima tabelă.
Asocierea multiplă se realizează prin intermediul unui tabel de joncţiune proiectat pentru
acest scop. Tabelul de joncţiune sau de legătură se proiectează cu câmpul cheie primară
compus din cheile primare ale celor două tabele pe care le va lega în relaţia mulţi -la-
mulţi; se pot adăuga şi alte câmpuri considerate necesare pentru definirea relaţiei. Prin
tabelul de legătură, relaţia mulţi -la-mulţise transformă în două relaţii unu-la-mulţi.
De exemplu, în baza de date Salariati, tabelul tblInscrieriCursuri este legătura între
tabelele tblSalariati şi tblCursuri (un angajat participă la mai multe cursuri iar la un curs
participă mai mulţi angajaţi).
Integritatea referenţială asigură coerenţa datelor din tabele corelate astfel: în tabelul
corespondent din relaţia stabilită unu -la-multi, în câmpul cheie externă nu pot fi introduse
decât valori din câmpul cheie primară din tabelul primar. Îngroşarea liniei relaţiei şi marcajul
tipului de relaţie (1, ∞) semnifică faptul că s -a impus restricţiei de integritate.
Impunerea integrităţii referenţiale împiedică ştergerea sau modificarea valorilor din tabelul
principal dacă acestea au înregistrări corelate. De exemplu, nu se poate şterge o
înregistrare din tabelul tblDept dacă sunt înregistrări corelate în tblSalariati – salariati
repartizaţiacestui departament.
Integritatea unei baze de date
1. Integritatea entităţii – cheile primare să fie unice în cadrul unei tabele.
2. Integritatea referenţială – cheile externe trebuie să aibă valori corespondente în cheia
primară dintr -o tabelă principală.
Integritarea referenţială a datelor din tabelele unei baze de date Microsoft Access este
asigurată automat în funcţie de opţiunile selectate în fereastra Relationships:
Enforce Referential Integrity – opţiune ce va permite ca la ştergere a sau modificarea
valorilor dintr-o înregistrare a unei tabele să se verifice dacă există înregistrări
asociate în altă tabelă care depind de aceasta; în acest caz ştergerea sau
modificarea vor fi interzise;
24
Cascade Update Related Fields – opţiune ce permite actualizarea câmpurilor
corelate în cascadă; la modificarea valorii câmpului cheie primară din tabelul
principal se vor modifica automat câmpurile cheie externă din tabelul secundar cu
care e află în această relaţie; de exemplu, dacă se modifică tipul de codificare a
conturilorce constituie cheie primară, vor fi modificate valorile corespondente în toate
tabelele asociate cum ar fi tranzacţii, clienti, etc.
Cascade Delete Related Records permite ca la ştergerea unei înregistrări din tabelul
cu câmpul cheie primară să fie şterse toate înregistrările corelate acestei înregistrări.
Tipuri de asocieri (Join Type)
Tipul de asociere a unei relaţii Join Type, defineşte modul în care înregistrările din tabelele
asociate vor fi combinate într-o interogare.
25
Capitolul 4
Operaţii în foile de date Access
După proiectarea tabelului se pot introduce date în tabele. Introducerea datelor se face
direct în tabel prin deschiderea tabelului îm modul de afişare Datasheet View (foaie de
date) sau în formulare asociate tabelului pentru introducere / modificare date.
Obiectele principale ale bazei de date sunt afişate în zona de lucru conform setării pentru
baza de date curentă din meniul File – Options - Current Database – Application Options
– Document Windows Options:
Overlapping Windows – afişează fiecare obiect deschis într-o fereastră proprie,
scalabilă, cu butoane de maximizare, minimizare, închidere.iar ferestrele deschise în
zona de lucru se aranjează folosind comenzile Switch Window
Tabbed Documents – afişează fiecare obiect deschis în foaie de lucru cu tab pentru
selectare şi activare; butonul Close în partea dreaptă a barei tab -ului. Butoanele de
navigare sunt în partea de jos a ecranului de lucru..
Deschiderea unui tabel în modul de afişare Datasheet View pentru lucrul cu datele se face
prin selectarea tabelului în panoul de navigare, dublu click sau, dacă tabelul este deja
deschis, se comută cu butonul din grupul View – ribonul Home.
În zona de lucru se afişează foaia de date a tabelului ce conţine numel e tabelului (bara de
sus), buton de închidere şi, dacă afişarea este Overlapping Windows, butoane de
max/min/scalabilitate.
Nume tabel
Nume câmpuri
Buton filtrare
Buton de
selecţie
Înregistrări asociate
Buton de după expandarea
expandare a butonului
inreg corelate
Bara de
navigare
Pentru lucrul cu datele din table sunt activate riboanele context Table Tools
– Fields: comenzi pentru adăugare a câmpurilor noi sau modificarea proprietăţilor
– Tables: comenzi avansate pentru programarea obiectelor tabelului, crearea şi
editarea relaţiilor.
4.1. Operaţii de bază cu datele din tabele
Selectarea înregistrărilor:
pentru a selecta o singură înregistrare se execută click pe butonul ei de selecţie
când prompterul devine săgeată
pentru a selecta un grup continuu de înregistrări - click pe butonul de selecţie al
primei înregistrări, tasta Shift apăsată şi click pe butonul de selecţie al ultimei
înregistrări;
26
pentru a selecta înregistrărilor în mod aleator, se face click pe fiecare buton de
selecţie al înregistrărilor inând
ţ tasta <Ctrl> apăsată;
pentru a selecta toate celulele de date ale coloanei unui câmp - click pe butonul
care conţine numele câmpului atunci când prompterul devine săgeată
Expandarea – afişarea înregistrărilor asociate din tabelele corelate din relaţia unu
mai mulţi – click pe butonul de expandare
Deplasarea în tabelă se face cu:
tastele săgeţi, prompterul mouse-ului sau
butoanele barei de navigare
În partea de jos a foii de date a tabelului sunt butoanele de navigare.
Adăugarea înregistrărilor
se poziţionează prompterul în înregistrarea goală din partea de jos a tabelului
indicată cu un asterisc (*) în coloana butonului de selecţie a înregistrării.
27
Se introduce
un câmp cu
tipul datelor
Numar
După introducerea câmpului se modifică tipul datelor, numele câmpului şi alte proprietăţi
prin comutare în modul Design View.
4.3. Sortarea înregistrărilor
Într-un tabel Access, datele sunt afişate în mod implicit în ordinea introducerii lor sau
după cheia primară, dacă aceasta există . Pentru afişare înregistrărilor în foaia de date
într-o ordine personalizată (sortare) se procedează astfel :
1. Se deschide tabelul în modul Datasheet View şi poziţionaţi prompterul în câmpul
(coloana) după care vreţisă ordonaţi foaia de date;
2. Click pe butonul Ascending din grupul Sort&Filter tab-ul Home
pentru ordonare crescătoare sau pe butonul Descending pentru
ordonare descrescătoare
3. Anularea sortării cu butonul Remove Sort din acelaşi grup.
4.4. Căutarea şi înlocuirea datelor dintr -o tabelă
Pentru a găsi înregistrări care conţin în câmpuri le tabelului valori egale cu unele valori
particulare, folosiţi comanda Find a programului Access de pe ribonul Home grupul Find.
1. Se deschide tabelul în modul Datasheet View (foaie de date).
2. Dacă se doreşte căutarea unei valori într -un anume câmp se plasează prompterul în
câmpul respectiv; opţional, se poate selecta valoarea căutată şi
click pe butonul Find;
3. Caseta de text Find What conţine valoarea căuta tă iar în lista
derulantă Look In .se alege una din variantele:
Current field (câmpul în care se află prompterul) sau
Current document (întregul tabel)
4. Se selectează locaţia valorii căutate în valorile din câmp în lista derulantă Match:
Whole Field – valoarea căutată constituie valoare întregului câmp
Start of Field – valoarea căutată constituie constituie începutul valorii din câmp
Any Part of Field – valoarea căutată constituie o parte a valorii din câmp
5. Direcţia de căutare Search: în sus (Up), în jos (Down), în ambele direcţii (All );
6. Cu click pe butonul Find Next se vor localiza apariţiile.
7. Pentru înlocuirea cuvântului căutat cu un altul faceţi click pe fila Replace, introduceţi
cuvântul cu care se va înlocui în caseta Replace width şi click butonul Replace All
pentru a înlocui toate apariţiile sau inlocuiresa selectivă cu Replace.
28
Butoane de pe fila
Replace
3
1 2
Filtrele se pot salva ca şi interogări – Apply Filter Sort va afişa cerinţa de filtrare ca
interogare(Query)
29
Capitolul 5
Expresii în baze de date Access
O expresie este este o combinaţie a unor elemente din: funcţii predefinite sau definite de
utilizator, identificatori, operatori, constante, expresie este evaluată la o valoare unică.
Expresiile pot fi simple (cu operator logic, evaluate la valorile True sau False) până la
expresii complexe, combinaţii de operaţii matematice, logice, funcţii.
Toate obiectele bazelor de date Access conţin expresii: tabelele, interogările, formularele,
rapoartele, macrocomenzile, module de program VBA (Visual Basic for Applications).
30
5.1. Generatorul de expresii
Pentru introducerea asistată unei expresii, Access pune la dispoziţia utilizatorilor generatorul
de expresii, Expression Builder, care oferă asistenţă în utilizarea acelor elemente ale
expresiilor şi operatorilor permişi într -un anumit context.
Caseta expresiei: se
introduce direct prin
tastare sau prin
selectare cu click a
elementelor expresiei
Elementele expresiei:
Obiectul bazei în
care se introduce
expresia
Funcţiile grupate pe
categorii; click pe
butonul + deschide
lista categoriilor
Obiectele principale
ale bazei de date
grupate pe tipuri; click
butonul + deschide
lista obiectelor
Operatori
Expresii comune
Pentru elementul expresiei selectat (ex.
Expresii comune: qrySalarii_Dept) afişează elementele care pot
Current date (data curentă): Date() intra în expresie (ex. câmpurile din interogare
Current Date/Time: Now() care pot intra în expresie prin selectare)
Categoriile de funcţii definite de programul Access sunt similare cu cele din Excel:
31
5.2. Expresii uzuale
Operaţii cu valori de tip text în formulare şi rapoarte:
="N/A" Afişează N/A.
=[Nume] & " " & [Prenume] Afişează valorile din Nume şi Prenume separate
de spaţiu.
=Left([Nume], 1) Afişează primul caracter din câmpul Nume.
=Right([Cont], 3) Afişează ultimele trei caractere a valorii din câmpul
Cont
= IIf(Left([CNP];1)="1";"M";”F”) Afişează caracterul "M" dacă primul caracter din
CNP este 1 dacă nu, ”F”
Numerele paginilor în rapoarte sau formulare
=[Page] 1, 2, 3
="Pagina " & [Page] Pagina 1, Pagina 2, Pagina 3
="Page " & [Page] & " of " & [Pages] Page 1 of 3, Page 2 of 3, Page 3 of 3
="Pagina" & [Page] & "/"& [Pages] Pagina 1/3, Pagina 2/3, Pagina 3/3
=[Country] & " - " & [Page] UK - 1, UK - 2, UK - 3
=Format([Page], "000") 001, 002, 003
Operaţii aritmetice în formulare, rapoarte
=[Subtotal]+[Media] Adună valorile din câmpurile Subtotal şi Media.
=[DataCeruta]-[DataCompletarii] Face diferenţa între valorile din câmpurile DataCeruta
şi DataCompletarii.
=[Pret]*1.06 Înmulţeşte valoarea din câmpul Pret cu 1.06
=[Cantitate]*[Pret] Înmulţeşte valoarea din câmpul Cantitate cu cea din
câmpul Pret.
=[SumaTotal]/[LuniTotal] Imparte valoarea din câmpul SumaTotal la cea din
câmpul LuniTotal.
Referirea valorilor în formulare
=Forms![Comanda]![CmdID] Valoarea din caseta CmdID din formularul
Comanda
=Forms![Comanda]![CmdSubfrm]![Subtotal] Valoarea controlului Subtotal din
subformularul CmdSubfrm din formularul
Comanda.
= Forms![Comanda]![CmdSubfrm]![Pret]*1,06 Valoarea din controlul Price din sub-
formularul CmdSubfrm din formularul
Comanda se înmulţeşte cu valoarea
constantă 1,06.
32
=Count([FacturaID]) numărul de înregistrări care au valori in controlul
FacturaID.
=Sum([Vanzari]) suma valorilor din câmpul Vanzari.
=Sum([Cantitate]*[Pret]) suma valorilor rezultate în urma produsului dintre
valorile din controalele Cantitate şi Pret.
=[Vanzari]/Sum([Vanzari])*100 procentul vânzărilor rezultat din împărţirea valorii din
controlul Vanzari la suma tuturor valorilor din acest
control.
33
Capitolul 6
Interogări în bazele de date Access
Scopul pentru care se crează o bază de date constă în stocarea, extragerea rapidă şi
prelucrarea setului de date care interesează la un anumit moment. Pentru ca acest lucru să
fie posibil trebuie definită relaţia între tabele asociate pe baza câmpurilor cheie
(Relationship), tipul de asociere şi restricţia referenţială (Join type).
Interogarea (query) este o definiţie a datelor căutate şi extrase (afişate) din tabele: ce
câmpuri, din care tabele, corespunzător căror criterii, în ce ordine de sortare
Proiectarea unei interogări în Access reprezintă un proces de extragere a câmpurilor dorite
din tabele pe o grilă şi adăugarea criteriilor de selecţie şi de sortare. Acest procedeu este
cunoscut sub numele de query by exemple (QBE). În urma acestei acţiuni, Access
transformă informaţiile furnizate în instrucţiuni de tip SQL (Structured Query Language -
limbaj structurat de interogare).
Tabele
Interogare
Interogările au avantajul că pot afişa simultan înregistrări din mai multe tabele; în cazul în
care două tabele sunt implicate într -o relaţie one-to-many, interogarea are în mod normal
câte un rând pentru fiecare înregistrare din partea "mai mulţi ", valorile din partea "unu" fiind
repetate la fiecare rând.
6.1. Tipuri de interogări
O interogare permite combinarea într-o foaie de date informaţii din mai multe tabele aflate în
relaţie , selectarea înregistrăril or după anumite criterii, ordona rea după unul sau mai multe
câmpuri, efectuarea calculelor cu datele din înregistrările selectate.
Tipuri de interogări
Interogările de selecţie (Select Query) extrag date dintr-unul sau mai multe tabele şi
le afişează în formă de listă conform unor criterii stabilite în proiectarea interogării.
Interogările total (Total Query) şi încrucişate (Crosstab Query) centralizează în
formatul unei foi de calcul tabelar datele din unul sau mai multe tabele folosind
funcţiile agregat pe seturile valori din înregistrările selectate.
Interogările de acţiune :
o creează noi tabele în bazele de date ( Make-Table Query) sau
o realizează modificări majore ale unei tabele:
actualizează datele din tabel (Update -Query),
adaugă înre gistrări în tabel (Append Query)
şterge înregistări din tabel (Delete Query).
34
6.2. Proiectarea interogărilor de selecţie
Pentru a proiecta o interogare trebuie mai întâi definit scopul, ce date trebuie să fie extrase,
să fie cunoscute structurile tabelelor, relaţiile, criteriile de selecţie, ordinea de afişare. Înainte
de începerea proiectării interogării se închid tabelele din care se extrag date şi se verifică
relaţiile în tabela Relationship.
Pentru crearea interogărilor, Access pune la dispoziţ ia utilizatorilor două butoane de
comandă pe ribonul Create – grupul Queries: Query Wizard – program asistent pentru
selectarea tabelelor şi câmpurilor apoi se afişează modul Query Design pentru definirea altor
proprietăiţ ale interogării şi Query Design – metoda cea mai completă şi utilizată.
Mod de lucru:
1. Click pe tab-ul Create - click butonul Query Design
2. Se afişează caseta de selectare Show Table
3. Se selectează tabelul (interogarea) din care vor proveni câmpurile interogării şi click pe
butonul Add, se selectează următorul tabel şi click pe butonul Add, se repetă selectarea
pentru toate tabelele sau interogările (din fila Queries) vizate.
4 Click pe butonul Close pentru a închide fereastra Show Table.
35
6. Salvarea interogării cu butonul Save din Quick
Access Toolbar sau din meniul File – comanda
Save object As.
Numele unei interogări este unic în baza de date în
categoriile de obiecte Tables şi Queries.
7. Vizualizarea rezultatului interogării: se comută
interogarea în modul Datasheet View – grupul
View, ribonul Home sau Query Tools sau click pe butonul Run din Query Tools.
Sort: descrescător
Salariul_brut
Ordinea de sortare: înregistrările selectare se ordonează crescător, alfabetic A -Z, după NumeDept;
în grupul înregistrărilor care au aceeaşi valoare în câmpul NumeDept sortarea se face descrescător
după valorile din câmpul Salariul_brut.
36
6.4. Criterii de selecţie în interogări
Criteriile de selecţie se introduc în rândul Criteria în coloana câmpului care trebuie să
îndeplinească o anumită condiţie.
Dacă se introduc mai multe valori în acelaşi rând de criterii pentru câmpuri dife rite, se
vor extrage înregistrările care îndeplinesc simultan toate criteriile.
În cazul în care criteriile se introduc pe rânduri diferite (opțiuniea Or) o înregistrare va
fi selectată dacă îndeplineşte oricare din condiţii
În rândul criteriilor de selecţie se introduc expresii pentru compararea valorilor din câmpul
respectiv cu valoarea rezultată din expresia introdusă.
O expresie este o combinaţie a unora sau toate dintre următoarele: funcţii predefinite sau
definite de utilizator, identificatori, operatori şi constante. Fiecare expresie este evaluată la o
valoare unică.
Valorile pentru comaparare sunt de tip text, numerice sau dată calendaristică, acelaşi tip cu
tipul datelor din câmpul în care s-a introdus criteriul.
Criteriul definit ca valoare diferită de Criteriul - șir de caractere care începe cu litera
valoarea introdusă (aici tip dată D; se foloseşte caracterul de substituţie *
calendaristică)... pentru şirul de caractere din dreapta literei “D”
37
6.6. Interogări centralizatoare de tip Total şi Crosstab
O interogare de totaluri (Total Query) este o interogare de selectare care permite gruparea
şi să obínerea unor informaíi pe ansambluri de date. De exemplu, calcularea salariilor totale
pentru ale angajaților din fiecare departament sau ultimul contract încheiat într-o perioadă
selectată. Într-o interogare de totaluri, se utilizează funcţiile agregat:
- Sum( ) / Suma valorilor
- Avg( ) / Media aritmetică
- Min( ) / Valoarea minimă
- Max( ) / Valoarea maximă
- Count( ) / Numărul de valori
- First( ) / Prima valoare introdusă
- Last( ) / Ultima valoare introdusă
Mod de lucru:
1. Se proiectează o interogare de selecţie cu câmpul criteriul de grupare şi câmpul pe
care se aplică funcţia agregat.
2. Click comanda Totals de pe ribonul context Query Tools - Design, în panoul grilei
de proiectare se va afișa linia Total, care are în toate câmpurile expresia Group By;
3. Expresia Group By rămâne în coloana câmpului după ale cărui valori se grupează
înregistrările şi iar în coloana (câmpul) în care se aplică funcţia de agregare, în
rândul Total se selectează din lista derulantă funcţia aplicată setului de valori din
grup (ex. Sum pentru totalul valorilor din grup)
38
Interogările încrucişate de tip Crosstab Query sunt interogări centralizatoare, care permit
stabilirea exactă a modului în care apar în listă datele centralizatoare. Acestea afişează
datele în formatul tradiţional rând-coloană al foilor de calcul tabelar.
Interogările încrucişate folosesc cuvinte cheie Access SQL TRANSFORM pentru a arăta că
declaraţiile care îl urmează sunt pentru o astfel de interogare.
Cu ajutorul acestor interogări puteţi executa următoarele acţiuni:
selectarea câmpului care creează etichete (titluri) ale rândurilor, utilizând
instrucţiunea Group By;
stabilirea câmpului ale cărui set de valori creează anteturile coloanelor şi criteriile
care determină valorile care apar sub ele; funcţia de grupare pe coloana Group By
atribuirea funcţiilor pentru calcularea valorilor din celulele din grila rând-coloană,
rezultată din lista funcţiilor agregat din lista derulantă afişată la click pe rândul
Crosstab al acestei coloane (similar interogărilor de tip total).
Mod de lucru:
1. Se proiectează o interogare de selecţie cu câmpurile ce vor constitui grup pe linie,
grup pe coloană şi câmpul pe care se va aplica funcţia la intersecţie rând-coloană
2. De pe ribonul context Query Tools – Design, click pe butonul Crosstab; selectaţi în
rândul Crosstab afişat în grilă Row Heading şi Column Heading
3. În linia Total a câmpului pe care se va aplica funcţia agregat, se selectează funcţia
iar în rândul Crosstab al acestui rând se selectează Value
4. Click pe butonul Run va afişa foaia de date rezultată
39
3. Cu generatorul de expresii (reconandat pentru introducerea corectă a expresiei !) sau
manual se introduce expresia, câmpurile operanzi sunt în paranteze pătrate;
4. Cu click pe butonul Run sau prin comutare în datasheet view se obţine rezulatulul.
40
2. Se salvează interogarea şi se transformă în interogare Append din ribonul Table
Tools – Design; în fereastra Append selectează numele tabelului principal, în care
se vor duce înregistrările selectate în interogare.
41
Capitolul 7
Formulare în baze de date Access
42
2. În caseta Tables / Queries se selectează tabelul asociat formularului din listă .
3. Din panoul Availables Fields se selectează câmpurile pentru formular astfel:
selectează numele câmpului şi click pe butonul ; câmpul va fi transferat în panoul
câmpurilor selectate; anularea selecţiei se face cu click butonul .
Lista câmpurilor selectate
Lista derulantă pentru selecţia
tabelului sau interogării
43
7.3. Obiectele formularului
După salvare, formularul este introdus în lista obiectelor de tip Form în panoul de navigare
cu numele şi iconul de formular, exemplu .
Formularele prezintă colecţi i de elemente specifice de proiectare, numite elemente de
control sau obiecte de control:
Casete de text cu numele câmpurilor asociate - pentru introducerea şi editarea
datelor;
Etichetele - pentru definirea numelor câmpurilor;
Cadrele sau frame-urile sunt folosite pentru afişarea obiectelor grafice;
Grupuri de butoane de opţiune sau liste de valori - pentru alegerea unei valori dintr-
un grup de valori;
Câmpuri de date calculate pe baza valorilor introduse în casetele de text;
Butoane de comandă care declanşează acţiuni
Subformulare - formulare, pentru afişarea şi introducerea datelor în tabele asociate
Nume formular
Etichete cu numele
câmpului
Casete asociate
câmpurilor tabelelor
Subformular
Butoane de comandă:
salvare/şterge/închide
Butoane de navigare
44
7.5. Proprietăiţle formularului
Casete de text
asociate câmpurilor
tabelelor
Etichete cu numele
câmpului
Afişarea formularului în format Design View permite vizualizarea proprietăţilor formularului,
modificarea proprietăţilor, adăugarea sau modificarea controalaelor formular ului.
Filele ferestrei Properties Sheet: Format, Data, Event, Other şi All grupează proprietăţile
în funcţie de categoria filei respective, de exemplu:
- Format: prezintă proprietăţile aspectului, modul de prezentare a ferestrei şi
controalelor, dimensionare, culori, butoane de navigare şi de selecţie etc.
- Data: tabelul sau interogarea asociată, modul de selecţie a datelor, permisiuni de
acces la date, opţiuni de filtrare şi sortare da înregistrărilor afişate în formular
- Event: evenimentele şi acţiunile care se declanşează la producerea unui eveniment;
exemple de evenimente ale formularului: deschiderea, închiderea, activare,
dezactivarea. Acţiunile sunt module program VBA sau macrocomenzi.
- Other: opţiuni pentru meniuri şi comenzi asociate, de tipărire etc.
Introducerea şi modifica rea datelor din tabele cu formularul
Se afişează formularul în Form View; butoanele de pe bara de navigare folosesc pentru:
45
Formatarea formularului şi introducerea noilor controale
Butoanele de pe ribonul context Form –Design Tools - Design sunt instrumente de lucru
pentru adăugarea noilor controale în formular; se selectează controlului şi cu drag se
introduce pe formular în secţiunea corespunzătoare. Opţiunile se introduc prin programul
asistent al fiecărul control (Wizard)
Instrument de selectare a obiectelor dintr-un cadru dreptunghiular care trasat folosind
cursorul mouse-ului
Introducerea unei casete de text în care se introduce o expresie (câmp calculat) cu
operanzi valorile câmpurilor din formular sau funcţii şi expresii curente
Introducerea etichetelor (labels) în orice secţiune a formularului. După introducerea textului
în cadrul desenat se selectează şi se formatează folosind funcţiile de formatare
Introducerea unui buton de comandă; cu programul asistent (Wizard) se defineşte acţiunea
declanşată la click; se alege din categorii de acţiuni asupra obiectelor şi opţiunile cerute
Se introduce o pagină nouă şi comutatorul de pagină; pentru formularele cu multe
controale care nu pot fi afişate doar pe o pagină
Crearea unei legături la o pagină web, adresă de e-mail, imagine sau program
Introducerea unui grup de opţiuni; se poate selecta doar o opţiune sub forme
personalizate; valorile pot fi completate într-un câmp asociat din formular
Introduce o întrerupere de pagină la poziţia curentă a cursorului atunci când formularul
este imprimat
Introducerea unei liste derulante de valori (din tabel sau interogare sau listă introdusă
manual) pentru completarea unui câmp sau găsirea unei înregistrări pe baza selecţiei
Introducerea unei diagrame (grafic) cu datele din tabelul sau interogarea selectată
Desenarea unei linii pentru delimitarea grafică a unor secţiuni ale formularului.
Introducerea unor controale de selectare a unor opţiuni care nu se exclud; pot fi selectate
mai multe opţiuni din grup
Introducerea unui cadru pentru obiecte neasociate formularului
46
Capitolul 8
Rapoarte în baze de date Access
Raportul este obiectul unei baze de date proiectat în vederea tipăririi datelor. Acesta nu
modifică niciodată datele, fiind nevoie să se parcurgă secvenţial înregistrările pentru a
genera subtotaluri şi rezumate.
Raportul este necesar pentru a tipări sau a exporta în alte aplicaţii anumite date
selective din baza de date şi oferă posibilitatea prelucrării datelor în vederea
centralizări acestora sub forma unor totaluri, subtotaluri, sinteze.
Datele prezentate în raport pot fi dintr-un tabel, din două tabele asociate sau din
interogări. Datele prezentate în raport pot fi sortate şi grupate.
Gruparea se face de obicei după un câmp cheie primară din tabelul relaţia unu iar
elementele grupului sunt înregistrări corelate.
Sortarea se defineşte ca fiind ordinea de afişare a elementelor unui grup
8.1. Metode de proiectarea unui raport
- Report – Creare unui raport bazat pe datele din tabelul sau interogarea curentă (sau
selectată) căruia i se pot adăuga ulterior criterii de sortare, grupare etc.
- Report Design – Proiectarea unui raport cu o structură standard cu ajutorul
instrumentelor de proiectare de pe bara de instrumente, se adaugă proprietăţi şi
controale cu secvenţe de program.
- Blank Report – Proiectarea raportului un suport necompletat, se adaugă controale
din tabele afişate în lista ataşată foii raportului
- Report Wizard – Proiectarea raportului cu ajutorul programului asistent Report
Wizard; raportul rezultat se poate modifica şi personaliza.
- Labels – Proiectarea etichetelor standard cu folosind datele din tabele cu ajutorul
programului aistent, Label Wizard.
8.2. Proiectarea asistată a rapoartelor
Programul asistent de proiectare a rapoartelor, Report Wizard, oferă suport pentru
proiectarea rapoartelor personalizate cu date din tabele sau interogări.Un raport se poate
proiecta cu date dintr-un singur tabel sau
din tabele care se află în relaţe Mod de
lucru:
1 Click pe butonul Report Wizard de pe
ribonul Create, grupul Reports
2 Se selectează tabelul sau tabelele (sau
interogarea) din lista Tables/Queries; din
lista câmpurilor Available Fields
selectarea câmpului şi click , câmpul
este trecut în lista câmpurilor Selected
Field; selectarea butonului duce la
selectarea tuturor câmpurilor.
47
3 După selectarea tuturor câmpurilor din tabele asociate click butonul
4 Opţuni de grupare a înregistrărilor după un anumit câmp; în funcţie de relaţiile dintre
tabelele selectate se propune implicit
gruparea după câmpul de legătură
unu.mai-mulţi dintre tabele.
5 Următosare fereastră conţine
opţiunile de sortare şi opţiuni de
aplicare a funcţiilor agregat (Summary
Options pentru câmpuri de tip
Number); opţiunea de sumare este
disponibilă doar dacă sunt opţiuni de
grupare
48
8.3. Sortarea şi gruparea
Prin comutarea în forma de vizualizare a raportului în format Design View se afişează
structura raportului iar modificările se operează asupra structurii şi formatului cu controalele
de pe ribonul context - Report Design Tools.
Astfel, pot fi adăugate sau şterse controale, se pot adăuga etichete în secţiunea de antet şi
subsol al raportului cu ajutorul butoanelor de pe bara de instrumente
Opţiunile de grupare şi sortare ale unui raport pot fi vizualizate, adăugate, modificate cu
ajutorul comenzilor butonului Group&Sort; la selectarea butonului se afişează în partea de
jos a ferestrei raportului în format Design View, opţiunile existente de grupare şi sortare şi
pot fi modificate sau adăugate altele nou (Group on select field)
Dacă un raport a fost proiectat fără opţiuni de grupare, sortare sau funcţii de tip total, cu
ajutorul comenzilor din grupul Grouping & Totals se pot adăuga.
1. Click butonul Group&Sort; se afişează comenzile Add a group , Add a Sort
2. Click pe butonul Add a group deschide lista câmpurilor
din raport şi se selectează câmpul după care se va face
gruparea (exemplu ID_Dept)
3. Click pe butonul Add a sort pentru grupul creat va afişa lista câmpurilor pe care se
poate adăuga opţiune de sortare (exemplu Nume)
4. În funcţie de structura tabelului se pot rafina opţiunile de grupare sau sortare în grup.
8.4. Exportul rapoartelor în alte aplicaţii
Un raport poate fi exportat în altă bază de date Access dar şi într-o serie de formate pentru a
fi deschise în alte programe:
foaie de calcul Excel,
document de tip text, .txt, doar conţinutul fără formatări; coloanele tabelului sunt
create cu spaţii
fişiere .pdf sau .xps; formate standard, permit vizualizarea datelor dar nu pot fi făcute
modificări
sub forma unui fişier ataşat unui e-mail, în unul din formatele selectate din lista
prezentată la salvarea fişierului pentru ataşare
49
More: formate Word, HTML sau Share point (dacă există), ODBC , dacă există
Comenzi de export şi formate de afişare a raportiului în Print Preview
La selectarea unui buton pentru exportul într-un anumit format se deschide fereastra de
salvare a raportului unde se vor completa: locaţia fişierului, numele, formatul şi versiunea de
program.
Butoanele pentru lansarea operaţiei de export sunt pe ribonul External Data, grupul Export.
50