Sunteți pe pagina 1din 51

FORȚA – Femei Ocupate, Resursă pentru o Țară Activă

POSDRU/144/6.3/S/128914

Suport de curs
OPERATOR INTRODUCERE, VALIDARE SI PRELUCRARE DATE

MODULUL 7

FUNDATIA PENTRU FORMARE PROFESIONALA SI INVATAMANT PREUNIVERSITAR VIITOR


CENTRUL DE FORMARE CLUJ
Capitolul 1
Concepte în teoria bazelor de date

Evoluţia tehnologiei, a metodelor şi tehnicilor de organizare şi de stocare a informaţiilor


precum şi necesitatea de a prelucra rapid şi sigur un volum mare de date, au determinat
dezvoltarea şi implementarea conceptului de bază de date în tehnologia informaţiei.
Se poate spune că baza de date reprezintă cel mai important instrument de tehnologia
informaţiilor folosit de organizaţii pentru stocarea, prelucrarea depozitelor mari de informaţii
cu foarte multe interdependenţe. La baza dezvoltării acestei noi tehnologii stau câteva
concepte şi noţiuni care trebuie cunoscute: date, informaţii, entitate, atribut, valoare.
1.1. Date şi informaţii
Datele şi informaţiile reprezintă componentele primare ale sistemului informaţional.
 Data este conceptul definit în tehnologia informaţiei ca un model de reprezentare a
informaţiei într-un format accesibil unui calculator, desemnează elementul primar,
caracter numeric sau alfanumeric, provenind din diverse surse, fără o formă
organizată care să permită luarea unei decizii.
 Informaţia este reprezentată de data ce are un caracter de noutate, care
îmbogăţeşte nivelul de cunoştinţe ale celui care primeşte informaţia şi îl ajută în
luarea deciziilor. Se poate spune că orice informaţie este o dată în conceptul
tehnologiei informaţiei dar, nu orice dată este informaţie.
De exemplu, 4,21 nu reprezintă decât un număr cu 2 zecimale dar, se enunţă: “astăzi
un euro se vinde cu 4,21 lei” , 4,21 lei reprezintă deja o informaţie.
1.2. Entitate, atribut, valoare
 Entitatea este reprezentarea unică a unui obiect individual (concret sau abstract) din
lumea reală, prin proprietăţile sale; de exemplu reprezentarea entităţii clienti ca obiect
concret şi reprezentarea entităţii cont bancar ca obiect abstract.
 Atributele entităţilor reprezintă proprietăţile entităţilor
 Un atribut ia anumite valori. De exemplu, o persoană este recunoscută după nume:
persoana reprezintă entitatea, numele reprezintă proprietatea entităţii persoana; valoarea
pe care o ia această proprietate pentru un element al entităţii, de exemplu, Maria.
Orice proprietate a unui obiect poate fi exprimată printr-o pereche (atribut, valoare); o
entitate poate fi exprimată prin mai multe proprietăţi, deci prin mai multe perechi de tipul
(atribut, valoare).
De exemplu, o persoana, poate fi reprezentată prin mulţimea de perechi: (Nume,
Popescu); (Data naşterii, 10 mai 1967); (Sex, masculin); (Profesie, economist); (CNP,
167051090000). În acest caz, se poate afirma: entitatea persoana este definită prin
atributele: nume, data nasterii, sex, profesie, CNP (codul numeric personal).
Atributele unei entităţi se stabilesc în funcţie de contextul în care descrierea este
necesară. De exemplu în descrierea entităţii “salariat”, atributele pot fi: nume, prenume,
CNP, funcţia, studii, salariul, departamentul în care lucrează etc.
În contextul conceptelor date – informaţii, definim entitatea, atributul, valoarea astfel:
 Entitatea reprezintă obiectul informaţiei
 Atributul este proprietatea entităţii
 Valoarea este măsura proprietăţii.

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.

O coloană reprezintă un atribut al entităţii angajat tabelei

Un rând
reprezintă o
înregistrare
a tabelei

1.3. Conceptul bază de date


Bazele de date au apărut din necesitatea de a avea un acces rapid şi uşor la un volum din
ce în ce mai mare de date.
Conceptul de bază de date poate fi definit ca fiind una sau mai multe colecţii de date aflate
în interdependenţă, împreună cu descrierea datelor şi a relaţiilor dintre ele.
O bază de date reprezintă un ansamblu de date integrat, anume structurat şi dotat cu o
descriere a acestei structuri. Descrierea poartă numele de dicţionar de date şi realizează o
relaţie între datele propriu -zise şi programe.
Baza de date reprezintă mai mult decât o colecţie de fişiere: ea include şi dicţionarul de date
şi o descriere a relaţii lor dintre înregistrări (fişiere intercorelate). Descrierea este utilizată pe
întreaga durată a prelucrării informaţiilor.
 Un fişier al unei baze de date este alcătuit dintr -un ansamblu de înregistrări fizice
omogene sub aspectul conţinutului şi prelucrăr ii.
 Înregistrarea fizică este unitatea de transfer dintre memoria internă şi cea externă a
calculatorului şi este formată din mai multe înregistrări logice.
 Înregistrare logică este unitatea de prelucrare privită din punctul de vedere al
programului utilizator şi este alcătuită din mai multe câmpuri.

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 1n; 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 mn; 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

Crearea & Definirea


modificarea structurii
logice a bazei de datelor
N
u
Interogarea şi Manipularea c
modificări ale l
informaţiei datelor
e
u Baza de
l date
Meniuri, formulare de Generarea Dicţionar
date, rapoarte şi aplicaţiei de date
aplicaţii software S
G
Drepturi de acces B
utilizatori, metode de D
backup şi recovery Administrarea
datelor
Teste asupra
efectului modificărilor
structurale

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

Funcţii de bază Funcţii suport

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.

Meniu File Quick Acces Grup de ribonoane context


Toolbar Toolbar

Fereastra de lucru
Zona de tab-uri

Panou de navigare

 Panoul de navigare, cu un conţinut ce se personalizează, înlocuieşte fereastra


Database, gestionează obiectele bazei de date . Panoul de navigare poate fi ascuns,
dacă se doreşte mai mult spaţiu de lucru.
Lista Navigate by Category defineşte modul în care sunt afişate obiectele; în
exemplul de mai jos grupurile vor fi categorii de obiecte (Tables, Queries, Forms,
Reports, Macros).

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

 View Shotcut Toolbar - Bară cu scurtături de vizualizare - bară de instrumente


(Toolbar) context - senzitivă la colţul a ferestrei programului oferă comutarea printr -
un click de buton pe o formă de vizualizare a obiectului bazei de date. Astfel, se
poate comuta rapid între modul de vizualizare Datasheet view (vizualizare tabel de
date) Design view (vizualizarea pentru proiectare), Pivot Table view (vizualizatea
datelor în tabel pivot), sau Diagrama Pivot, Form view, Layout view, Report view
şi alte forme de vizualizare specifice obiectului curent.
 Fereastra de lucru unde sunt afişate obiectele bazei de date în formatul selectat din
View Toolbar, fiecare obiect deschis este afişat pe o filă cu numele înscris pe tab -ul
din partea de sus a ferestrei de lucru. Formatul de afişare selectat de ut ilizator este
corespunzător lucrului cu obiectul respectiv: proiectare, lucrul cu datele, afişare
sinteze şi diagrame, previzualizare. Comutarea între obiectele deschise (activarea)
prin click pe tab-ul sau etichete obiectelor.
Tab-uri cu numele obiectelor descise

Obiect selectat - activ


 Bara de stare, în partea de jos a ferestrei de lucru conţine informaţii despre stadiul
unei acţiuni, starea obiectului selectat etc.

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.

Butonul Save de pe bara de acces rapid (Quick


Access Toolbar) declanşează salvarea tabelului în
baza de date.
Numele tabelului este un şir de caractere
alfanumerice care trebuie să fie sugestiv, ales în
funcţie de entitatea descrisă în tabel; se recomandă

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

comanda Close Database


Ştergerea unei baze de date
Pentru ştergerea unei baze de date de care nu mai este nevoie se deschide un program
utilitar de fişiere (Windows Explorer), se selectaează fişierul care conţine baza de date şi
apoi click pe iconul Delete (sau comanda Delete din meniul scurt).
Utilizatorul este atenţionat pentru a confirmarea ştergerii.

14
Capitolul 3
Tabele în baze de date Access

3.1. Proiectarea tabelului în modul Design View


Tabelul este structura bidimensională coloane -rânduri care stochează datele. Un tabel
conţine date despre un tip de entitate: clasă de obiecte, evenimente sau concepte cu
proprietăiţ comune, cu un nume unic în baza de date. O serie completă sau incompletă de
articole care reprezintă fiecare categorie se numeşte o înregistrare. Prin urmare, un tabel
poate fi reprezentat după cum urmează:

Categorii de informaţii

Nume Prenume e-mail Telefon Categorie


Înregistrări

Ionescu Bogdan Ibob@ggm.ro 0775 4567 client


Moraru Ioana im@yann.ro 0748 3456 colaborator
Adam Mihai aam@ibb.ro 0728 5869 client
In dezvoltarea unei baze de date, o categorie de informaţii este reprezentată ca o coloană,
numită un câmp. O înregistrare este reprezentat ca un rând. La crearea unui nou tabel, se
cere definirea câmpurilor acestuia, atribuind fiecărui câmp o denumire unică în tabel, precum
şi tipul şi dimensiunea datelor pe care acesta le va conţine.
Moduri de proiectare a tabelelor:
1 ) Crearea unui tabel nou prin introducerea datelor într-o foaie de date.
De pe ribonul Create, grupul Tables se selectează comanda Table – în zona de lucru
a aplicaţiei se afişează structura tabelului în vizualizare de foaie d e date; se pot
introduce înregistrări în tabel. Pentru a da un nume câmpului (numite iniţial Field 1,
Field 2 samd.) se selectează numele câmpului pentru editare (dublu click pe tab -ul cu
numele) se tastează numele.
Butonul de deschidere a listei cu
tipurile de date care se pot
introduce în câmpul respectiv.

Adăugarea unei Numele implicit de coloană; Adăugarea unui


noi înregistrări se va introduce nume câmp nou

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

Data Type – tipul de dată a


câmpului; se selectează din lista
derulantă afişată la click în caseta
de definire
proprietăţilor
Definirea

Field Name - numele


câmpului (coloanei) sau
atributele entităţilor
Proprietăţile atributelor se prticularizează
în funcţie de tipul de dată, în filele General
şi Lookup

3.2. Definirea câmpurilor unui tabel


Fiecare câmp din tabel trebuie să aibă un nume unic, să i se atribuie un tip de dată şi să
aibă o dimensiune bine precizată.
o Field Name - conţine numele câmpului; nume coloană în foi de calcul, poate avea max.
64 caractere, sunt admise spaţii (dar nu sunt recomandate), caractere speciale;
caractere nepermise în nume: punct (.), semn de exclamare (!), paranteze drepte ([]),
care sunt utilizate în sintaxa instrucţiunilor din proceduri, macrocomenzi şi expresii !

 Data Type - Tipul datelor din câmpul definit în Field Name se alege dintr-o listă, pusă la
dispoziţia utilizatorilor de Access şi defineşte tipul datelor care pot fi stocate în acest
câmp, determină tipul de operaţii ce se pot efectua şi spaţiul de
stocare alocat pentru fiecare valoare.
 Description – zonă opţiona lă de informaţii , se face o descriere a
câmpului; este un comentariu util mai ales pentru proiectanţii ş i
programatorii bazelor de date.
 Field Properties - zona de proprietăiţ , are două file (pagini)
General şi Lookup, conţine seturile de proprietăţii şi casete de
completare, în funcţie de tipul de dată şi de proprietate, prin
alegerea unei variante posibile din listă, fie prin introducerea
expresiei.
3.3. Tipuri de date
Data Type conţine tipul datelor şi se declară p rin selectarea tipului
dintr-o listă derulantă, afişată la clic k pe butonul de listă în partea
dreaptă a casetei pentru tipul de dată; implicit tipul de date este text.
Toate datele stocate într-un acest câmp vor fi de acelaşi tip în toate
înregistrările tabelului.
În funcţie de tipul de dată se definesc şi alte proprietăţiale câmpurilor.
Date Tipul datelor Descrierea tipului datelor
Alfanumerice Text Şir de caractere, litere, cifre, semne speciale
acceptate, cu cel mult 255 caractere.

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

3. În fereastra de opţiuni se selectează tipul de listă pentru introducerea datelor:


o un tabel existent în care se precizează câmpul din tabel care va deveni listă
derulantă pentru selectarea valoriilor sau
o o listă care se creează prin introducerea elementelor listei

4. Se introduc elementele listei


5. Click butonul
6. Se dă un nume câmpului şi se completează alte opţiuni;
click butonul

Proprietatea Lookup – Display Control din secţiunea Field Properties se modifică:


modul de introducere a datelor în câmp devine listă de căutare (Combo Box); implicit
este formatul Text Box (casetă de text).

3.4. Proprietăţile câmpului


Field Size (Dimensiunea)
– pentru câmp de tip text: numărul maxim de caractere ce pot fi introduse
– pentru tipul de date Number, există 6 subtipuri posibile pentru Field Size
Field Size Interval valoric
Zecimale
Byte 0 de la 0 la 255
Integer 0 de la -32.768 la +32.768
Long Integer 0 de la - 2.147.483.648
până la +2.147.483.648
38
Single 7 de la -3,4*10
38
până la +3,4*10
308
Double 15 de la -1,797*10
308
până la +1,797*10
Replication ID Identificator global unic
Decimal 18 Numar zecimal de mare precizie,
numarul de cifre înainte şi după
punctual zecimal configurabil

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

o Date/Time (data/ora): format


lung, scurt, oră, minute,
secunde

o Yes/No sau variante: On/Off


sau True/False

 Decimal Places – numărul de zecimale. Prin această proprietate se stabileşte


numărul de zecimale care se afişează (numai pentru tipurile Number şi Currency).
Auto – număr de zecimale implicit, stabilit prin setări regionale.
 Input Mask – reprezintă impunerea unui anumit format pentru toate datele incluse în
acest câmp. În cazul unui câmp de tip Text sau Date/Time, se va putea rula Input
Mask Wizard care oferă posibilitatea selecţiei din mai multe măşti standard de intrare
predefinite (ex: date calendaristice) cu clic pe butonul Ellipsis (...).

19
Simbolurile care pot fi folosite la construirea măştilor de intrare pentru tip Text:

Simbol Semnificaţia / Exemple


0 Afişează o cifră (09) în această poziţie, dacă există, dacă nu afişează zero.
Masca (000) 000-0000  afişarea textului (206) 555-0248
9 Introducerea opţională a unei cifre 09 (semnul + / - nu este permis).
Masca (999) 999-9999!  afişarea textului (206) 555-0248 sau ( ) 555-0248
# Introducerea opţională a unui număr 09 (semnul + / - permis).
L Este necesară introducerea unei litere AZ sau az.
Masca >L0L 0L0  afişarea textului T2F 8M4
? Introducerea opţională a unei litere A Z sau az
Masca >L<??????????????  afişarea textului Maria
A Necesită introducerea unei litere A Z, az sau a unei cifre 09.
a Introducerea opţională unei litere A Z, az sau a unei cifre 09.
& Necesită introducerea oricărui caracter sau a unui spaţiu.
Masca ISBN 0-&&&&&&&&&-0  afişarea textului ISBN 1-55615-507-7
C Introducerea opţională a oricărui caracter sau a unui spaţiu.
> Toate caracterele care urmează sunt transformate în majuscule.
Masca >LL00000-0000  afişarea textului DB51392-0493
< Toate caracterele care urmează sunt transformate în litere mici.
\ Caracterul care urmează este afişat ca atare, ca un literal, şi nu conform
semnificaţiei din mască.
! Plasat oriunde în mască, va impune completarea caracterelor care urmează
de la dreapta la stânga.

 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: =, <

<=, >, >=, Between …and…,

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 .

 

ID_Dept este cheie primară  ID_Dept este cheie externă

Cheia primară de tip AutoNumber:


Dacă într-un tabel nu se identifică un câmp cu proprietăţile unei chei primare , Acces pune la
dispoziţie un câmp de tip autonumerotare, AutoNumber, care poate fi cheie primară.
La crearea unui tabel nou în Datasheet View, Access creează automat o cheie primară și îi
desemnează ti pul de date AutoNumber.

Eliminarea cheii primare


Eliminarea cheii primare se face prin anularea efectului butonului (deselectarea butonului)
Primary Key. Eliminarea cheii primare elimină de asemenea indexul ce a fost creat pentru
cheia primară. Înainte de a elimina cheia primară, este necesar să şteargă relaţiile definite
pe acest câmp.
Modificarea cheii primare
Schimbarea cheii primare a unui tabel poate fi realizat făcând pa șii următori:
 Eliminarea cheii primare existente – anularea selecţiei butonului Primary Key
 Setarea unei alte chei primare

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

2. După afişarea ferestrei Relationship în zona de lucru , pentru stabilirea relaţiilor:


selectează butonul Show Table pentru adăugarea tabelelor care trebuie asociate.
3. Se selectează tabelul şi click pe butonul Add pentru fiecare table de adăugat.
4. Click pe butonul Close pentru a închide fereastra de dialog Show Table.
5. Tabelele selectate sunt în fereastra Relationship ca obiecte grafice, pot fi mutate în altă
poziţie sau redimensionate chenarele de afişare a câmpurilor .
6. Se selectează câmpul cheie primară din tabelul numit principal şi glisează pe câmpul
cheie externă cu care se pune în legătură , din tabelul secundar ( în exemplu, ID_Dept din
tblDept se suprapune prin glisare pe câmpul ID_Dept din tblSalariati).
7. Se deschide fereastra de pentru editarea relaţiei – Edit Relationship:

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.

Asocierile pot fi de următoarele tipuri:


1. asocieri interne (inner join) care corespund opţiunii 1: din fereastra Join Properties.
Asocierea se face doar pentru acele înregistrări cu valori egale în câmprile
corespondente, cheie primară şi câmpul cheie externă; nu se asocia înregistrări cu valori
de tip Null (nu sunt introduse valori) în tabelul asociat. De exemplu, înregistrarea unui
salariat care în câmpul ID_Dept nu are valoare completată, nu se va afişa în relaţia cu
tabelul tblDept.
2. asocieri externe (outer join) care pot fi asocieri externe stânga sau dreapta, depinzând
de direcţia în care este plasat tabelul de legătură şi corespund opţiunilor 2: şi 3: din
fereastra Join Properties.
Opţiunea 2: se vor afişa toate înregistrările din tabela din relaţia “unu” chiar dacă au
corespondent în tabela secundară sau nu, se afişează înregistrările asociate, dacă
există. De exemplu, se afişează şi departamente ce nu au salariaţi repartizaţi dar nu se
afişează salariaţii nerepartizaţi (au valoarea Null în câmpul ID_Dept).
Opţiunea 3: se vor afişa toate înregistrările din tabela din relaţia “mulţi” şi înregistrări
asociate, dacă există; se vor afişa toţi salariaţii, repartizaţi sau nu şi departamentele la
care sunt repartizaţi (câmpul ID_Dept este completat).
Editarea şi modificarea relaţiilor
În fereastra Relationship sunt afişate toate informaţiile asupra relaţiilor definite între
tabele unei baze de date. Dublu click pe linia de linia de legătură a relaţiei deschide
fereastra Relationship; se pot modifica restricţiile de integritate referenţială, tipul de
asociere (Join Type)
Editarea relaţiilor, modificarea, ştergerea, adăugarea unei noi
relaţii, stabilirea restricţiilor de integritate se operează în fereastra
Relationship.

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.

numărul numărul total Existenţa unui Aplicarea


înregistrării curente de înregistrări filtru sau nu căutarii

prima înregistrarea înregistrarea ultima înregistrare


înregistrare precedentă următoare înregistrare nouă

 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.

 înregistrare va fi adăugată în tabel numai după ce sunt introduse date în


câmpurile cerute de proprietăţi (obligatoriu câmpul cheie primară şi câmpurile cu
proprietetea Required); înregistrarea este salvată în tabel prin mutarea
pointerului înregistrării l a altă înregistrare sau cu comanda Save Records din
grupul Records
 Ştergerea înregistrărilor : selectează
înregistrarea sau înregistrările şi
apasă tasta Delete sau click butonul
de pe ribonul Home;
ştergerea nu poate fi anulată
conform mesajului.
Înregistrările care au înregistrări corespondente în tabelele asociate nu pot fi
şterse decât dacă restricţia de integritate referenţială permite acest lucru.
4.2. Adăugarea unui atribut nou tabelei (câmp nou)
 Adăugarea câmpului prin introducerea datelor î n câmpul necompletat a tabelului
şi apoi se schimbă numele câmpului;
 Adăugarea unui câmp alegând tipul datelor dintr -o lista derulantă la selectarea
titlului Click to Add din Foaia de date
 Adăugarea unui câmp în mijlocul unui tabel – se poziţionează prompterul în
câmpul în faţa căruia se va introduce câmpul nou; de pe ribonul context Field –
Table Tools click pe tipul noului câmp.

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

4.5. Filtrarea înregistrărilor


Access permite să aplica rea unui filtru pentru a selecta anumite înregistrări din tabelă,
conform unor criterii. Metode de filtrare:
 Filtrare automată – Filter - Numele câmpului are buton cu
listă deru lantă pentru stabilirea valorilor de filtare şi criterii
specifice fiecărui tip de dată (text, număr); se pot selecta
criterii pe mai multe câmpuri, în acest caz condiţiile
trebuie îndeplinite simultanpentru ca înregistrarea să fie
selectată.
 Filtrare prin selecţie - Filter by Selection- criteriul se aplică
numai unui singur câmp al tabelului. Se selectează valoarea după care se vor filra
înregistrările şi clic k pe butonul Selection de pe ribonul Home – grupul Sort &Filter.
Din lista derulantă de variante se alege una din acestea: valoarea să fie egală, diferită ,
să conţină sau să nu conţină selecţia. Anularea filtrării se face cu click pe butonul
din grupul Sort&Filter
 Filtrare sau ordonare avansată - Advanced Filter/Sort - este
cea mai puternică metodă de filtrare. Mod de lucru:
- Deschideţi lista comenzilor din lista derulantă a
butonului de filtrare; selectaţi Filter by Form;
- Se introduc criterii de filtrare:
 prin selectarea unei valori din lista derulanta care
se fişează la selecţia câmpului; exemplu
“economist” în coloana Functia sau
 tastarea expresiei logice; exemplu ”>01.01.1965”
 se pot introduce criteria alternative prin comutarea
în fila condiţiilor ”or”
- Comanda Apply Filter/Sort; are ca efect afişarea în foaia de date înregistrările
care îndeplinesc toate condiţiile impuse de criteriile completate

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).

O declaraţie, pentru a fi considerată


o expresie, trebuie să conţină cel
puţin un operator sau funcţie şi un
cuvânt identificator.
Tipuri de operatori:
- aritmetici
- de atribuire şi logici
- de concatenare
- de identificare

Operatori logici şi semnificaţia acestora Operatori aritmetici


= Egal cu + Adunare
> Mai mare decât - Scădere
>= Mai mare egal cu * Înmulţire
< Mai mic decât / Impărţire
<= Mai mic egal cu ^ Ridicare la putere
<> Diferit de \ Impartirea unui intreg la altul
Between x and Valori In intervalul x, y; Mod Restul impărţirii la un întreg
y
Like Comparare cu un text (conţine
şi caractere de substituţie * sau Operatori de concatenare
?)
Is Null Câmpul nu are date & Combină
Is not Null Câmpul are date Operatori de identificare
In Valoarea egală cu o valoare din . (punct) Deosebeşte numele obiectelor de
listă proprietăţile lor
Not In Valoarea diferită de o valoare ! (semnul combină numele claselor de
din listă exclamarii) obiecte şi numele obiectelor pentru
a selecta un anumit obiect sau o
proprietate a acestuia,
Forms![Contracte], clasa de
obiecte o constituie formularele,
Forms, referit formularul Contracte.

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:

Funcţiile din categoria


selectată; dublu click pe
Sintaxa funcţiei selectate şi Categoriile de funcţii definite în funcţie va deschide
informaţii online de folosire cu programul Access; selectarea unei panoul de editare a
click pe hyperlink categorii afişează funcţiile funcţiei

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.

Expresii pentru calcularea controalelor din rapoarte


=Reports![Factura]![CmdID] Valoarea din controlul CmdID din raportul Factura.
=Reports![Totaluri]![VanzariTotal] Valoarea din controlul VanzariTotal din raportul
Totaluri.

Expresii utilizate în controale calculate în formulare şi rapoarte

=Avg([Salariul_brut]) media valorilor din controlul Salariul_brut

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.

Expresii în care se utilizează funcţiile de dată şi oră


=Date() Afişarea datei curente în forma setărilor regionale
=DateAdd("y", -10, [DataFinal]) Data care a fost cu 10 zile înaintea celei din câmpul
DataFinal
=DateDiff("d", [DataFactura], Calculează numărul de zile între valorile date
[DataPlata]) calendaristice cuprinse în câmpurile DataFactura şi
DataPlata.

5.3. Expresii în tabele bazei de date


Tabele folosesc expresiile pentru:
- introducerea câmpurilor calculate (Data Type – Calculated),
- în definirea proprietăţilor prin introducerea regurilor de validare (Validation Rule) sau
- valorilor implicite (Default Value).
Câmp calculat: În bază de date de personal, introducerea unui câmp calculat, Sex,
cunoscând valoarea câmpului CNP; se foloseşte o expresie ce conţine o funcţie de
comparaţie (IIF) combinată cu funcţia de extragere (Left) a primului caracter din CNP
Sex : IIf(Left([CNP];1)="1";"M";”F”)

Valoare implicită (Default value): Data curentă

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.

 

5. În ferestra de proiectare a interogării se selectează câmpurile în interogare: dublu click pe


numele câmpului în tabel sau prin selectarea numelui câmpului în lista derulantă în panoul
de proiectare a interogării în rândul Field.

Panoul tabelelor şi relaţiilor

Grila - proiectare interogare

Field: numele câmpului


Table: numele tabelului
din care provine câmpul
Sort: opţiune de sortare
Show: opţiune de afişare
Criteria: criteri de selecţie;
or: criteriul alternativ (sau)

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.

6.3. Criterii de sortare în interogări


Într-o interogare puteţi să sortaţi rân durile rezultate în ordine crescătoare sau
descrescătoare după un câmp sau mai multe câmpuri; în acest caz ordinea aplicării criteriilor
de sortare se face de la stânga la dreapta.
 În modul de vizualizare Design View, criteriile de sortare sunt selectarte în rândul
Sort din panoul de proiectare.
 În coloana câmpului după care se doreşte ordonarea, în rândul Sort; se deschide
lista derulantă şi în funcţie de selecia Ascending sau Descending se face
ordonarea crescător, respectiv descrescător după valorile câmpului.
 Click pe butonul Run se afişează foaia de date cu rezultatul sortării
 Dacă se sortează după mai multe câmpuri, ordinea acestora în panoul de selectare
trebuie să fie conform ordinii de sortare. Restabilirea or dinii coloanelor în interogare
se face cu drag&drop numele coloanei în noua locaţie .
Sort: crescător
după câmpul
NumeDept

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.

Afişarea înregistrărilor rezultate din interogări


La rularea unei interogări sau la comutarea în Datasheet View, numărul înregistrărilor
afişate, se specifică în valoarea selectată din lista derulantă a butonului de
comanda Return de pe ribonul context Query Tools –
Design, grupul Query Setup.
Valoarea implicită All – va afişa toate înregistrările rezultate. Lista mai prezintă
valori implicite pentru număr de înregistrări: 5, 25, 100 sau procent din 5%,
25%; se pot introduce alte valori sau procente şi se salvează înregistrarea. La
rularea interogării vor fi afişatea doar un număr specificat de înre gistrări.

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 interval de


date calendaristice; este
echivalent cu folosirea
combinata a operatorilor „>=”,
„And” „<=”

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”

6.5. Interogări de selecție cu parametru formal


Dacă într -o interogare este necesară modificarea frecventă a criteriilor de selecţie, se
recomandă transformarea acestor cereri în parametri.
Avantajul unei cereri cu parametru constă în faptul că aceste criterii se modifică şi primesc
valori în momentul rulării interogării.
Crearea unei cereri cu parametru se face astfel:
1. În câmpul Criteria se introduce, în loc de valoarea cu care se va compara valoarea
câmpului în momentul execuţiei interogării , o expresie, diferită de numele câmpului,
în paranteze pătrate, care va deveni prametru formal.
2. La execuţia interogării sau afişarea în modul DataSheet View, utilizatorul trebuie să
completeze caseta de dialog, Enter Parameter Value, cu valoarea care va constitui
criteriul curent al selecţiei.

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ă

6.7. Campuri calculate în interogări


Interogările conţin expresii în:
- câmpurile definite de utilizator pentru efectuarea calculelor folosind valorile din
câmpurile introduse în interogare.
- criterii de selecţie a înregistrărilor
- expresiile din interogări de tip total şi crosstab
- calcule pentru funcţia update în interogări de acţiunie de tip Update
Introducerea unui câmp calculat în interogare
1. În interogarea de selecţie trebuie să fie selectate câmpurile care vor deveni operanzi
în câmpul calculat; se salvează interogarea pentru utilizarea Expression Builder
2. În formatul Design View, în coloana liberă se introduce numele câmpului calculat şi
două puncte (ex. Impozit:)

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.

6.8. Interogări de acţiune


Crearea unei interogări de tip acţiune se face în 3 etape:
1. Crearea unei interogări de tip Select, se adaugă criteriile de selecţie şi se verifică ;
2. Transformarea interogării de tip selecţie într-o interogare de acţiune
3. Rularea şi verificarea rezultatelor.
Make Table Query – crearea unui tabel
Crearea unei tabele noi cu înregistrările rezultate din interogare la un anumit moment:
1. Se proiectează interogarea de selecţie cu câmpurile ce vor forma noul tabel; se
adaugă criterii de selecţie şi se verifică rezultatul;
2. Click pe butonul Make Table din ribonul context Table Tools – Design; în fereastra
de dialog afişată în caseta Table Name se completează numele tabelului rezultat

3. Tabelul se va crea la selectarea butonului Run de ribonul Table Tools – Design şi va fi

inclus în grupul obiecteor Table


4. La fiecare rulare, datele din tabel se şterg şi se introduc înregistrările rezultate din
interogare la momentul respectiv.

5. Interogarea Make table are un icon specific


Append Query – adăugarea unor înregistrări în tabel
Este necesară pentru concatenarea datelor din două tabele cu structuri identice; un tabel se
consideră principal, în care se aduc datele, iar celălalt furnizor de date.
1. Se proiectrază interogarea de selecţie cu datele din tabelul furnizor de date.

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.

3. Adăugarea înregistrărilor la rularea interogării click pe butonul Run; utilizatorul este


înştiinţat asupra numărului înregistrărilor adăugate.

4. Interogarea de tip Append are un icon specfic acţiunii


Update query – modificarea valorilor unor câmpuri
Modifică valorile unui câmp din înregistrările selectate
1. Se proiectează o interogare de tip selecţie în care vor fi selectate obligatoriu
câmpurile ce vor avea criterii de selecţie şi câmpul în care se modifică valorile.
2. Se salvează interogarea şi se transformă în interogare de tip Update cu click butonul
Update din ribonul Table Tools – Design;
3. În grila de proiectare se adaugă linia Update; în coloana în care valoarea se
înlocuieşte în rândul Update se va introduce noua valoare sau expresia;
4. La comanda Run se afişează în fereastra de informare numărul de înregistrări care
se vor modifica şi se cere acceptul modificărilor; ok declanşează modificările.

Interogarea Update se afişează în panoul de navigare cu iconul specific


Delete Query – ştergerea unor înregistrări
Se şterg din tabel înregistrările selectate pe baza unor criterii
1. Se proiectează o înregistrare de selecţie cu câmpurile unui tabel din care se şterg
înregistrări; se selectează câmpul sau câmpurile pe care se aplică criterii de selecţie.
2. Se salvează şi se verifică setul de date rezultat în selecţie;
3. Click butonul Delete de pe ribonul Table Tools – Design

4. Click pe butonul Run va declanşa operaţia de ştergere a înregistrărilor selectate;


utilizatorul este înştiinţat şi se cere acordul pentru ştergere.
5. Se salvează interogarea ca interogare de ştergere marcată cu iconul

41
Capitolul 7
Formulare în baze de date Access

7.1. Proiectarea formularelor


Formularele (Forms) sau videoformate asigură interfaţa utilizatorului cu obiectele bazei de
date (tabele, interogări, rapoarte, programe), pentru introducerea, modificarea sau doar
afişarea datelor.
În cadrul unui Sistem de Gestiune a Bazelor de Date, formularele au următoarele funcţii:
1. Introducerea, afişarea şi editarea datelor.
2. Controlul operaţiilor realizate de aplicaţie.
3. Afişarea mesajelor, introducerea condiţiilor şi parametrilor pentru execuţie
4. Tipărirea şi transferul informaţiilor
Metode de proiectare a formularelor :
Prin utilizarea comenzilor de pe ribonul Create –
grupul Forms se pot proiecta formulare dedicate unor
operaţii în baza de date:
 Form - metoda rapidă de proiectare a formularelor asociate unui tabel sau interogări,
cu toate câmpurile tabelului sau interogării, pentru introducerea datelor.
În panoul de navigare se selectează tabelul sau interogarea şi click pe butonul
Forms. Se generează formularul cu subformular pentru tabelul asociat şi se afişează
în panoul de lucru. Implicit, formularul are numele tabelului selectat; ce poate fi
schimbat la salvarea formularului cu click
pe butonul Save de pe Quick Access
Toolbar.
Formularul cu sau fără subformular va
folosi la introducerea / afişarea /
modificarea datelor atât în tabelul
principal cât şi în tabelul asociat.
 Form Design – metodă de proiectare manuală a formularelor, se adaugă controalele
formularului de către proiectant. Metoda necesită experienţă în lucrul cu proiectarea
bazelor de date şi a obiectelor grafice.
 Blank Form – metodă manuală de proiectare a formularelor, controalele asociate
tabelelor sau interogărilor cât şi formatul de afişare sunt stabilite de proiectantul
bazei de date.
 Form Wizard - metoda cea mai utilizată de crearea asistată a formularelor asociate
unui singur tabel sau interogărilor; se pot crea formulare personalizate pentru
introducerea şi vizualizarea datelor.
 Navigation – creează forme pe baza unor şabloane care permit comutarea între
diferite forme şi rapoarte
 More Forms - creează formulare sofisticate pe baza unor şabloane, de introducere
şi vizualizare a datelor mai ales în structuri mari de date, de exemplu, prin selectarea
unei înregistrări din listă se afişează o fereastră de modificare a înregistrării.
7.2. Proiectarea asistată a formularelor
1. De pe ribonul Create – grupul Forms – click butonul Form Wizard; se începe
derularea procedurii de proiectare asistată a formularului cu deschiderea ferestrei de
dialog Form Wizard

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

Lista câmpurilor tabelului

Buton pentru transferul


câmpului din tabel în lista
câmpurilor selectate

Buton pentru transferul


tuturor câmpului în lista
câmpuri selectate

4. După selectarea tuturor câmpurilor, click butonul .


5. Se optează pentru f orma de afişare a înregistrărilo r în formular
 Columnar– o înregistrare se
afişează pe ecran (single form)
cu eticheta şi valoarea câmpului ;
 Tabular – format tabel, sunt
afişate atâtea î nregistrări câte
încap pe ecran,
 Datasheet – foaie de date;
 Justified – formă particulară cu
înregistrările afişate una dup alta.

5 În următorul ecran se tastează numele formularului şi click butonul

Se afişează în Form View pentru lucrul cu datele în formular . Pentru modificarea


aspectului şi controalelor formularului se comută în modul de afişate Design View .
Modurile de vizualizare ale formularelor:
Form View – format execuţie, formularul permite lucrul cu datele,
Layout View – permite ajustări ale aspectului formularului pe obiectele
introduse în formular, cu vizualizarea datelor din tabelul asociat
Design View – formatul de proiectare, permite modificări ale proprietăilor
ţ
obiectelor şi ale formularului, introduce rea de controale noi, modificări de
structură a formularului.

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

Eticheta din header

Etichete cu numele
câmpului
Casete asociate
câmpurilor tabelelor

Subformular

Butoane de comandă:
salvare/şterge/închide

Butoane de navigare

7.4. Formular multitabel – formular cu subformular


Un subformular este un formular inclus într-un alt formular, pentru a permite afişarea datelor
din mai multe tabele sau cereri de interogare, aflate în general în relaţii de tipul unu la unu
sau unu la mai mulţi. Astfel, în formularul principal vor fi afişate datele din partea unu a
relaţiei, iar în subformular din partea mai mulţi.
 În mod implicit, legătura dintre formular şi subformular reflectă legătura dintre
tabelele pe care se bazează.
 În momentul selectării unei înregistrări în cadrul formularului principal, înregistrările
asociate sunt încărcate automat în subformular.
 Într-un formular care conţine un subformular se pot specifica criteriile de filtrare
numai asupra câmpurilor din formularul principal.
Metodele cele mai folosite de proiectare:
1 Selectarea tabelului din relaţia unu a unei relaţii unu-la-mulţi şi click butonul Form
de pe ribonul Create - Forms
2 In procesul de proiectare asistat Form Wizard se selectează tabelele şi câmpurile
din cele două tabele

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:

- parcurgerea secvenţială a înregistrărilor de la înregistrarea curentă înainte - înapoi,

- comutarea pe prima sau pe ultima înregistrare,

- adăug area unei noi înregistrări . Înregistrarea se introduce cu respectarea regulilor de


validare a datelor definite în tabel, măştilor de intrare impuse în proprietăţile câmpurilor
tabelului sau regulilor definite în controalele formularului. Prompterul se poziţionează pe
înregisrare nouă şi se introduc datele înregistrării.

- căutarea după cuvânt cheie

- afişarea numărului secvenţial pentru înregistrarea curentă şi


numărul total şi tipul setului de înregistrări afişat: total sau filtrat.
Datele introduse deja se pot modifica prin poziţionarea pe întregistrare apoi cu prompterului
în câmpul de modificat. Modificările se salvează automat la trecerea la înregistrarea
următoare , la click pe Save sau la închiderea formularului.

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 controalelor de navigare personalizate

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.

Introdcerea butoanelor de comutare cu programul asistent;

Introducerea unei liste de valori; cu un rol asemănător cu listele derulante doar ca


elementele listei sunt vizibile în spaţiul alocat listei şi cu buton de derulare
Desenarea unui dertunghi pentru delimitarea grafică a unor porţ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

Introducerea butoanelor de opţiuni;

Introducerea unui formular ca subformular într-un formular proiectat deja; trebuie ca


tabelele asociate celor două formulare să fie în relaţie de 1:1 sau 1:n
Crearea unui cadru pentru obiecte de tip OLE asociate

Introducerea unei imagini în secţiunea formularului în care se desenează cadrul imaginii.

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

6 Selecţia uneia sau mai


multor funcţii agregat ce se
aplică valorilor câmpurilor cu
valori numerice din grup:
Sum, Avg, Min, Max are ca
efect introducerea în raport a
casetelor de tip text box cu
valorile rezultate în urma
aplicării funcţiilor bifate.
7 Aspectul de afişare a raportului, formatul paginiisunt opţiuni în următoarea fereastră de
proiectare a raportului.
8 Se introduce numele raportului
şi click butonul Finish; raportul
se va afişa în format de
previzualizare a imprimării
(PrintPreview).
9. Se afişează înregistrările
grupate în funcţie de criteriul de
grupare.
după fiecare grup se introduce
un rând cu numele funcţiei şi
numărul de înregistrări din grup
precum şi valoarea rezultată.

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