Sunteți pe pagina 1din 42

Access 2007 – Modul A – Pagina 1

MICROSOFT ACCESS 2007 (DE


CĂUTAT ???)

1. CONCEPTE GENERALE PRIVIND BAZELE DE DATE


Evoluţia diferitelor metode şi tehnici de organizare a datelor pe suporturi de
memorie externă a fost determinată de necesitatea de a avea un acces cât mai rapid şi
mai uşor la un volum cât mai mare de date. Datele stocate şi prelucrate sunt foarte
complexe, cu foarte multe interdependenţe, lucru care a făcut necesară apariţia bazelor
de date.
O bază de date reprezintă un ansamblu de date, organizate coerent, structurate cu
o redundanţă minimă, accesibile cât mai multor utilizatori în acelaşi timp. Deci o bază
de date este un ansamblu de colecţii de date, cunoscute sub numele de tabele (pentru
bazele de date relaţionale) şi obiecte (pentru bazele de date orientate pe obiecte).
Lumea reală conţine diferite obiecte care, la nivelul pe care le vom numi entităţi,
care au anumite caracteristici (proprietăţi) pe care le vom numi atribute, acestea
putând lua anumite valori. În acest context, informaţia se poate defini ca fiind formată
din:
 Entitate – obiectul informaţiei
 Atribut – proprietăţile entităţii
 Valoare – măsura proprietăţii
De exemplu, entitatea angajat este formată din atributele: nume, vârstă, ani
vechime, care au diferite valori.
Toate aceste date sunt organizate în tabele. O bază de date e formată din mai
multe tabele, cu diferite legături între ele.

1.1. Noţiunea de SGBD


Sistemele de Gestiune a Bazelor de Date (SGBD) reprezintă sisteme informatice
specializate în stocarea şi prelucrarea unui volum mare de date (din această categorie
face parte şi Microsoft Access 2007, parte a pachetului Microsoft Office 2007).
Termenul de gestiune se referă la modalităţile de memorare şi prelucrare a acestor
date iar termenul de Bază de Date se referă la datele de prelucrat şi la modul de
organizare a lor pe suport fizic.
Funcţiile unui SGBD sunt următoarele:
A. Descrierea bazei de date, care asigură:
 definirea tabelelor din baza de date;
 definirea relaţiilor care există între tabele;
 definirea condiţiilor de acces la informaţii;
B. Manipularea datelor:
 adăugarea de date la un tabel din baza de date;
 modificarea unor date dintr-un tabel din baza de date;
 ştergerea unor date dintr-un tabel;
 căutarea datelor;
Access 2007 – Modul A – Pagina 2

 ordonarea (sortarea) datelor;


C. Interogarea bazei de date:
 vizualizarea totală sau parţială a datelor, în funcţie de satisfacerea uneia
sau mai multor condiţii;
 generarea de rapoarte, forme, etichete etc.
Pentru utilizatorii neprofesionişti au fost create interfeţe care să asigure lucrul cu
ferestre, meniuri, obiecte de control, precum şi subpachete de programe speciale
pentru generarea de rapoarte, formulare, interogări etc.

2. ORGANIZAREA UNEI BAZE DE DATE ACCESS 2007


O bază de date în Microsoft Access 2007 este un fişier cu extensia .accdb
(ACCess DataBase) care conţine datele din bază, descrierea lor, şi obiecte pentru
manipularea acestora.
Un fişier bază de date poate conţine:
 tabele – conţin, de fapt, informaţiile din baza de date;
 interogări – conţin condiţii impuse unor linii din tabele pentru a fi incluse în
rezultat;
 formulare – conţin obiecte de control care permit introducerea şi
modificarea datelor din tabelele din baza de date;
 rapoarte – sunt obiecte ale bazei de date care permit obţinerea unei liste, mai
mult sau mai puţin complexe, care conţin liniile şi coloanele din tabelele
bazei de date;
 macro-uri şi module Visual Basic.1

3. PRIMII PAŞI ÎN LUCRUL CU BAZELE DE DATE


3.1. Deschiderea şi închiderea aplicaţiei Microsoft Access 2007
3.1.1. Deschiderea aplicaţiei
Se poate face cu:
 Start  All Programs  Microsoft Office 
Microsoft Access 2007;
 clic dublu pe pictograma asociată aplicaţiei Microsoft Access 2007 (pe
desktop, dacă există);
Se va deschide fereastra
aplicaţiei, care conţine:
1. Panoul Categorii de
şabloane (în stânga) din
care putem selecta ce
şablon dorim să folosim
pentru crearea noii baze de
date;
1
Visual Basic este limbajul de programare folosit de Microsoft Access pentru proiectarea aplicaţiilor
complexe.
Access 2007 – Modul A – Pagina 3

2. Un panou în mijlocul ferestrei, din care putem alege fie crearea unei baze de
date (Bază de date necompletată), fie un şablon dorit pentru noua
bază de date;
3. Panoul Deschidere bază de date recentă (în dreapta), în care
putem alege baza de date pe care dorim să o deschidem.
3.1.2. Închiderea aplicaţiei

Clic pe butonul de închidere al ferestrei2 sau butonul Office  Ieşire


din Access.

3.2. Crearea unei baze de date


Pot exista două situaţii:
1. Creare imediat după intrarea în Microsoft Access 2007:
a. Butonul Bază de date necompletată
b. La Nume fişier, în panoul din dreapta, specificăm discul,
calea şi numele bazei de date (eventual, folosim butonul
alăturat pentru a alege discul şi folderul în care vom salva baza).
c. Butonul Creare.
2. Creare ulterioară:

1. Butonul Office  Nou.


2. Se procedează ca mai sus.
Dacă intenţionăm să folosim baza de date într-un format compatibil cu versiunile
anterioare ale Microsoft Access, vom salva fişierul bază de date în format .mdb.3

3.3. Închiderea unei baze de date


Butonul Office  Închidere bază de date sau cu închiderea ferestrei
bazei de date sau la ieşirea din Access 2007.

3.4. Deschiderea unei baze de date Access 2007


Există mai multe variante:
1. Dacă e deschisă fereastra iniţială Microsoft Access 2007 şi în panoul din
dreapta (Deschidere bază de date recentă) apare numele bazei
de date respective, se dă clic pe numele bazei.
2. Dacă baza de date nu e afişată, clic în panoul Deschidere bază de
date recentă  legătura Mai multe  în dialogul afişat alegem discul
şi folderul în care se află baza de date, apoi baza de date în sine.
3. FileOpen sau clic pe butonul Open sau Ctrl+O (în toate cazurile).
2
Spre deosebire de alte aplicaţii (de exemplu Excel sau Word), la închiderea ferestrei nu se va mai
cere confirmare pentru salvare (în afara cazului în care e deschisă o fereastră internă de proiectare a
unei tabele, interogări, a unui formular sau raport).
3
Această variantă nu funcţionează la trimiterea fişierului .mdb prin mail sau printr-o reţea intranet;
în acest caz, el trebuie copiat local folosind alt mediu (CD, DVD, stick etc.).
Access 2007 – Modul A – Pagina 4

4. Dacă e deschisă fereastra


Windows Explorer şi fişierul
bază de date e afişat, se dă
un clic dublu pe fişier.
5. Dacă am lucrat recent la
baza de date, o putem alege
direct de la nivel de
Windows de la Start 
Recent Items.
6. Dacă avem deschisă
fereastra Access 2007 şi
baza dorită e printre ultimele
4 accesate, o putem alege
direct din partea inferioară a meniului File.
Indiferent de varianta folosită, se va afişa aceeaşi fereastră cu obiectele bazei de
date, clasificate pe tipuri.

4. INTERFAŢA CU UTILIZATORUL
4.1. Funcţia Help
Funcţia de Help se
activează folosind butonul
Ajutor Excel, ,
afişat în colţul din dreapta-
sus al ferestrei de
document sau tasta F1.
Se va afişa o fereastră în
care, în zona de editare test
de lângă butonul
Căutare, vom tasta
cuvântul sau cuvintele-cheie pe care le căutăm, apoi vom folosi tasta Enter sau
butonul Căutare.
Sistemul va afişa o listă cu legături spre toate capitolele de Help care conţin textul
căutat.
Fereastra Ajutor Excel e o fereastră distinctă şi, de aceea, o putem minimiza
sau, dacă nu mai avem nevoie de ea, o vom închide ca pe orice fereastră.
Textul din fereastra de Ajutor Excel poate fi copiat în orice altă fereastră.

4.2. Bara de instrumente Acces Rapid


Iniţial, bara Acces Rapid , prin intermediul căreia
putem avea executa rapid anumite operaţii este afişată sub filele afişate de meniu şi
conţine doar câteva butoane (Salvare, Anulare etc.) dar îi putem adăuga şi altele,
Access 2007 – Modul A – Pagina 5

astfel încât să avem acces rapid la operaţiile respective.


Pentru aceasta:
1. Clic dreapta pe unul
din butoanele din bara
Acces Rapid, apoi
Particularizare
bară de
instrumente
Acces Rapid.
2. În lista ascunsă
Afişare comenzi
de la alegem
categoria în care se
află comanda dorită
(comenzile dintr-un
anumit meniu,
comenzile care nu
apar în barele de instrumente, toate comenzile etc.)
3. Căutăm comanda în lista din stânga, o selectăm şi folosim butonul
Adăugare pentru a o adăuga în lista din dreapta.
4. Confirmăm cu OK.
Eliminarea unui buton din bara Acces rapid se face asemănător, dar folosind
opţiunea Eliminare din bara de instrumente Acces Rapid.
Revenirea la configuraţia standard a unei bare de instrumente se face din acelaşi
dialog, folosind varianta Reiniţializare.
OBSERVAŢIE
Unele bare de instrumente se afişează, automat, la deschiderea unei ferestre
de proiectare (pentru tabele, rapoarte, interogări, formulare) şi se închid, tot
automat, la închiderea ferestrei respective.

5. TABELE
Un tabel dintr-o bază de date Microsoft Access 2007 este organizat pe rânduri
(numite înregistrări sau articole) şi coloane (numite câmpuri).
Tabelele pot fi considerate, într-o oarecare măsură, analoage cu foile de calcul
dintr-un registru Excel iar baza de date analoagă cu întregul registru.
Câmpurile, împreună cu tipurile de date stabilite pentru ele, reprezintă structura
tabelului.
Câmp 1 Câmp 2 Câmp 3 ... Câmp n
Structura Nume Prenume Data_n ... Telefon
Articol 1
Articol 2
Spre deosebire de tabelele din Microsoft Word sau Excel, unde puteam introduce
orice valoare în orice celulă, în Microsoft Access 2007 trebuie să specificăm de la
început ce fel de valori vom introduce în fiecare coloană, urmând ca acesta să
Access 2007 – Modul A – Pagina 6

interzică, ulterior, introducerea valorilor de alt tip decât cel stabilit.


De exemplu, într-o coloană dintr-un tabel Word sau Excel puteam introduce o dată
calendaristică într-o celulă şi, în celula de dedesubt un text; în Access, odată stabilit
tipul dată calendaristică pentru acea coloană (câmp), nici una din „celulele“ din ea nu
vor putea conţine texte.
Această comportare se concretizează în conceptul de tip de dată.

5.1. Tipuri de date în Microsoft Access 2007


Microsoft Access 2007 acceptă următoarele tipuri de date:
Date Tip de dată Descriere şi proprietăţi
Text Sunt cele mai folosite, aşa că Microsoft
Access consideră acest tip ca fiind prestabilit.
Un câmp de tip Text poate conţine cel
mult 255 de caractere (implicit, 255). Pot
Alfanumerice exista şi texte de lungime 0.
Memo Se foloseşte pentru a adăuga într-un câmp
texte mai lungi de 255 de caractere
(maximum 65.535 sau texte care diferă foarte
mult, de la o înregistrare la alta, ca lungime.
Numerice Număr Pentru datele numerice sunt disponibile
mai multe subtipuri de date:
 Octet – valori întregi, 0...255;
 Întreg – valori întregi cuprinse între
–32.768 şi +32.767;
 Întreg lung – valori întregi
cuprinse între –2.147.483.648 şi
+2.147.483.647;
 Simplă precizie – valori cu
maximum 7 zecimale, în intervalul
±3.4*1038;
 Dublă precizie – valori cu
maximum 15 zecimale, în intervalul
±1.797*10308;
 ID reproducere – Identificator
global unic (16 octeţi);
 Zecimal – valoare numerică cu
număr cu fix de zecimale, în intervalul
±1028...1028.
Monedă Este un tip numeric special, fix, cu
precizie de 4 zecimale, conceput pentru a
preveni erorile de rotunjire la operaţiile de
contabilitate acolo unde valoarea trebuie să
se potrivească exact cu calculele făcute (8
octeţi).
Access 2007 – Modul A – Pagina 7

AutoNumerotare Un câmp de tipul AutoNumerotare conţine


o valoare întreagă pe care Microsoft Access
2007 o completează automat pentru fiecare
înregistrare adăugată la tabel.
Completarea se poate face în două moduri:
 Incremental – creşte cu 1 de la un
articol la următorul;
 Aleator – fiecare articol primeşte o
valoare aleatoare pentru acel câmp.
Indiferent de variantă, Microsoft Access
2007 ne asigură că nu vor exista două articole
cu aceeaşi valoare pentru un câmp de tip
AutoNumerotare4 dar valorile nu pot fi
actualizate.
Atenţie! Nu pot exista două câmpuri de
tip AutoNumerotare în acelaşi tabel,
chiar dacă se folosesc variante distincte
pentru ele.
Da/Nu Câmpurile de tip Da/Nu sunt câmpuri
(Yes/No) folosite pentru a exprima cazuri în care nu
există decât două situaţii: DA sau NU, de
exemplu: Adevărat/Fals, Da/Nu,
Activat/Dezactivat.
Indiferent de variantă, Microsoft Access
2007 consideră un astfel de câmp drept câmp
numeric, folosind valoarea –1 pentru DA şi 0
pentru NU.
Date Dată/Oră Pentru date calendaristice, în domeniul 1
calendaristice ianuarie 100...31 decembrie 9999.
Obiecte mari Obiect OLE Câmpurile obiect OLE creează imagini
bitmap ale documentului original sau a
obiectului respectiv, apoi afișează acea
imagine bitmap în câmpurile din tabel și în
controalele raportului sau formularului.
Documentul poate fi un desen, un fişier
audio, o foaie de calcul etc.
Câmpurile de acest tip nu pot fi cheie şi nu
pot participa la un index. Obiectele din aceste
câmpuri pot fi înglobate în câmp sau legate
de câmp.

4
Din păcate, la ştergerea unui articol, valoarea unui astfel de câmp nu se actualizează automat (ea
nu reprezintă numărul de articol decât la introducere). De exemplu, dacă un câmp are, în ordine,
valorile 1, 2, 3 pentru primele trei articole şi se şterge articolul cu valoarea 2, valoarea 3 nu va deveni 2
(deşi valoarea 2, ştearsă, nu se va mai atribui vreodată altui articol).
Access 2007 – Modul A – Pagina 8

Adrese Hyperlink Este un text sau o combinaţie numere-text,


Internet stocată ca text şi folosită ca adresă a unei
pagini de Web sau drept cale spre un fişier
spre harddiscul local/un harddisc din
intranet-ul local.
Ataşare Ataşare Permite crearea unui câmp în care se
realizează o legătură spre un fişier de pe disc.
Folosind un câmp de acest tip, putem
modifica direct fişierul respectiv.
Informaţii Expert căutare De fapt, nu este un tip adevărat de date.
legate Creează câmpuri care permit utilizatorului să
aleagă o valoare din alte tabele sau dintr-o
listă de valori.

5.2. Crearea unui tabel


Crearea tabelului înseamnă, de fapt, descrierea structurii tabelului, adică
specificarea următoarelor elemente pentru fiecare câmp:
 nume;
 tipul de dată;
 lungime.
Definirea structurii unui tabel se face astfel:
1. Deschidem fereastra bazei de date în
care vom crea tabelul.
2. Meniul Creare  fila Tabele 
butonul Tabel.
3. Dăm clic dublu pe varianta Creare
tabel în modul Vizualizare proiect
(Create table in Design
view5).6 Access 2007 va deschide fereastra pentru descrierea structurii
noului tabel.
4. În această fereastră, vom specifica, obligatoriu, pentru fiecare câmp
următoarele:
 în coloana Nume câmp (Field name) vom introduce numele fiecărui
câmp; acesta este folosit la identificarea ulterioară a câmpului, poate avea
maxim 64 de caractere şi poate conţine şi spaţii;7
 la Tip de date (Data type) vom alege tipul de date pentru câmpul
respectiv.
OBSERVAŢII
1. În cazul tipului Text, Access 2007 ne propune lungimea de 50 de
5
Celelalte variante nu permit specificarea directă a tipurilor de date ale câmpurilor.
6
Se poate folosi şi butonul Nou (New) din bara de instrumente şi, în dialogul afişat, se alege
varianta Vizualizare proiect (Design view).
7
Numele nu poate conţine puncte (.), semnul exclamării, paranteze mari, spaţii iniţiale şi caractere
neimprimabile.
Access 2007 – Modul A – Pagina 9

caractere pentru câmp, valoare care poate fi modificată la


Dimensiune câmp (Field Size).
2. În cazul tipului principal Number, subtipul se alege de la
Dimensiune câmp (Field Size).
Caracteristicile opţionale pentru câmpul curent pot fi specificate în partea
inferioară a ferestrei, în zona Proprietăţi câmpuri (Field
Properties):
 Dimensiune câmp (Field Size) – numărul maxim de poziţii ce
pot fi memorate în acel câmp (pentru valorile posibile pentru fiecare tip
de dată, v. tabelul cu tipurile de date de mai sus);
 Format – formatul de afişare ulterioară a datelor, cum ar fi:8

 Zecimale (Decimal Places) – numărul de poziţii din partea


zecimală (pentru câmpurile numerice);
 Mască intrare (Input Mask) – o machetă prin care putem
impune un anumit format de introducere a datelor în câmp; în acest
caz, pentru fiecare caracter (poziţie) din câmp, la introducere, putem
specifica unul dintre caracterele următoare:
Caracter Efect
# Permite orice cifră, un semn (+/-) şi un spaţiu
L Permite numai litere în poziţia respectivă
? Permite o literă sau nimic
A Numai literă sau cifră
9 Numai cifre
a Orice literă sau cifră sau nimic
& Numai un caracter sau un spaţiu
C Permite orice caracter, un spaţiu sau nimic
< Converteşte toate literele următoare în litere
mici
> Converteşte toate literele următoare în litere

8
Nu toate tipurile de date admit, aici, variante de format de afişare (de exemplu, tipurile Text şi
Memo).
Access 2007 – Modul A – Pagina 10

mari
\ Inserează caracterul următor, ca şi cum ar fi
introdus
! Aliniază valoarea introdusă la dreapta
De exemplu, dacă pentru câmpul Nume folosim masca
>L<??????????????, atunci prima literă din nume va fi convertită
la literă mare, următoarele la litere mici şi nu se vor permite mai mult
de 15 caractere în acest câmp; un alt exemplu: pentru câmpul CNP, de
tip Text pe lungime de 13, masca 9999999999999 va permite doar
introducerea de cifre în poziţiile respective; alt exemplu: pentru câmpul
Buletin, masca >LL999999 va permite doar litere pe primele două
poziţii şi cifre pe următoarele şase;
 Legendă (Caption) – permite specificarea unui nume atribuit
câmpului când acesta este folosit într-un raport sau un formular;9
 Valoare implicită (Default Value) – valoarea care se
atribuie, automat, câmpului, când utilizatorul nu introduce nici o
valoare pentru acel câmp;
 Regulă de validare (Validation Rule) – un criteriu care
trebuie îndeplinit de valoarea câmpului pentru a putea fi acceptată (v.
mai jos);
 Text de validare (Validation Text) – textul care se va
afişa în bara de mesaje când valoarea introdusă în câmp nu se respectă
criteriul specificat la Regula de validare;
 Obligatoriu (Required) – dacă este activată, utilizatorul nu va
putea trece de acel câmp fără să-l completeze;
 Se permite lungimea zero (Allow Zero Length) – se
permit sau nu valori vide în câmpurile text sau memo;
 Indexat (Indexed) – se creează sau nu un index pentru acel câmp
(v. capitolul despre indexare, mai jos).
5. La închiderea ferestrei, suntem întrebaţi dacă dorim să salvăm noul tabel şi,
dacă folosim Yes, se va afişa un dialog în care trebuie să introducem numele
noului tabel.
6. Vom fi întrebaţi dacă dorim să indexăm tabelul după un anumit câmp.
Deoarece indexarea va fi discutată mai jos, vom răspunde cu No la această
întrebare.
După aceşti paşi, în lista afişată în fereastra principală a bazei de date, la folosirea
butonului Tabele (Tables), se va afişa, ca pictogramă, noul tabel.

9
Se foloseşte mai ales când numele câmpului este „codificat“ – de exemplu, un câmp care conţine
un nume de persoană se numeşte C04. În acest caz, la crearea ulterioară a unui raport/formular sau la
afişarea conţinutului tabelului, Access va folosi, în locul lui C04, numele specificat la Legendă ca
etichetă pentru câmp.
Access 2007 – Modul A – Pagina 11

Exemple:
Să se creeze tabelele PERSONAL şi FUNCŢII cu următoarele structuri:
PERSONAL FUNCŢII
Nume câmp Tip de date Lungime Nume câmp Tip de date Lungime
Nr crt AutoNumerotare Incremental Funcţia Număr Întreg lung
Marca Text 3 Denumire funcţie Text 15
CNP
Nume Text 15
Prenume Text 20
Data naşterii Dată/Oră
Data angajării Dată/Oră
Studii Da/Nu
Adresa Memo
Funcţia Număr Întreg lung
Salariul Număr Simplă precizie

5.3. Adăugarea, modificarea şi ştergerea înregistrărilor dintr-un tabel


Accesul la un câmp al unei înregistrări se poate face numai după ce a fost accesată
înregistrarea respectivă. Pentru aceasta, Microsoft Access 2007 dispune de o structură
de date numită indicator (pointer) de înregistrări care, la un moment dat, se află pe o
anumită înregistrare numită înregistrare curentă (ea este marcată în fereastra
prezentată mai jos printr-un caracter ► în stânga).
Pentru a opera cu înregistrări într-un tabel (adăugări, modificări, ştergeri):
 dăm clic dublu pe numele tabelului în fereastra Tabele (Tables);
 selectăm tabelul şi folosim butonul Deschidere (Open) .
Se va afişa o fereastră stil Excel în care vom face operaţiile dorite:
1. Adăugarea de înregistrări se face mutând pointerul pe ultima înregistrare,
pe ultimul câmp şi folosind tasta Tab sau butonul din bara de stare. În
ambele cazuri, va apărea o înregistrare nouă, goală, în care vom tasta valorile
dorite.
2. Modificarea valorilor din înregistrările dintr-un tabel se face ţinând cont
de următoarele reguli generale:
 Trecerea de la un câmp la altul în aceeaşi înregistrare se face fie cu tastele
Tab (la următorul) sau Shift+Tab (la precedentul), fie cu un clic pe
câmpul dorit.
 Trecerea de la o înregistrare la alta se poate face:
 cu tastele săgeţi verticale
 cu clic pe înregistrarea dorită
 folosind barele de defilare
 folosind butoanele din partea inferioară a ferestrei.
 Trecerea la primul sau ultimul câmp din înregistrarea curentă se face cu
tastele Home respectiv End.
 Trecerea la primul câmp din prima înregistrare se face cu Ctrl+Home iar
la ultimul câmp din ultima înregistrare cu Ctrl+End.
 Copierea în înregistrarea curentă a valorii din înregistrarea precedentă se
Access 2007 – Modul A – Pagina 12

face cu Ctrl+apostrof.
 Valorile de tip AutoNumerotare se confirmă cu Enter.
 Pentru a copia/muta valoarea dintr-un câmp dintr-o înregistrare într-un
câmp din altă înregistrare putem folosi EditCopy/Cut după ce am
selectat valoarea-sursă, urmat de EditPaste în celula destinaţie. Se
pot folosi şi butoanele corespunzătoare din bara de instrumente.
 Introducerea datelor calendaristice se face, în mod standard, în formatul
zz/ll/aa dar se recomandă ca anul să fie tastat pe 4 cifre, chiar dacă, în
final, Microsoft Access 2007 îl va afişa, eventual, doar pe două cifre.
 Activarea/dezactivarea comutatorilor care apar pentru câmpurile de tip
Da/Nu se face fie cu bara de spaţiu, fie cu mouse-ul.
 Oricare ar fi modificarea făcută, putem anula ultima operaţie folosind
EditAnulare câmp/înregistrare curentă
(EditUndo) sau butonul cu acelaşi nume imediat după operaţia
respectivă.
3. Ştergerea unei înregistrări se face prin selectarea ei urmată de tasta Delete
sau cu EditDelete Record sau folosind butonul Delete din
bara de instrumente, după care se confirmă ştergerea (Atenţie, nu există
Undo!).
Exemplu: Să se introducă în tabelul PERSONAL cel puţin
10 înregistrări, cu dubluri pentru câmpul Funcţia. În
tabelul FUNCŢII vor exista atâtea înregistrări câte coduri
distincte de funcţii există în tabelul PERSONAL.

5.4. Modificarea structurii unui tabel


Pentru a modifica structura unui tabel:
1. Deschidem baza de date.
2. Deschidem fereastra de dialog Tabele (Tables).
3. Alegem tabelul dorit.
4. Folosim butonul Proiect (Design). Se va afişa aceeaşi fereastră ca la
crearea tabelului, în care vom efectua modificările dorite, adică:
 Inserarea unui câmp între două câmpuri existente – se face selectăm
câmpul deasupra căruia dorim să apară cel nou şi folosim
InsertRows sau butonul Insert Rows din bara Table
Design, după care specificăm numele noului câmp, tipul de date şi
lungimea câmpului.
 Ştergerea unui câmp – selectăm câmpul cu un clic pe butonul gri din
stânga numelui lui şi folosim EditDelete sau tasta Delete sau
butonul Delete Rows din bara Table Design. Dacă acel câmp
participă la vreun index, se va şterge şi acel index.
Access 2007 – Modul A – Pagina 13

 Mutarea unui câmp în altă poziţie – se face trăgând cu mouse-ul pe


verticală butonul gri aflat în stânga numelui lui, până când acesta ajunge
în poziţia dorită;10
 Modificarea caracteristicilor unui câmp (tip/subtip de dată, lungime,
numărul de zecimale etc.) – folosim elementele de control din zona
Proprietăţi câmp (Field Properties).
La închiderea ferestrei de modificare a structurii, Microsoft Access 2007 ne
întreabă dacă dorim ca modificările efectuate să rămână valabile.
OBSERVAŢII
1. Sunt posibile orice modificări, cu condiţia să avem grijă la
schimbarea tipurilor de date (Microsoft Access 2007 încearcă să
convertească valorile existente la noul tip de date dar nu orice
conversie e posibilă) şi la scurtarea câmpurilor (cazuri în care,
valorile existente ar putea fi trunchiate).
2. Oricare ar fi modificările făcute, putem anula ultima operaţie folosind
EditAnulare... (EditUndo...) sau butonul dar numai
imediat după operaţia respectivă şi numai până la închiderea
ferestrei de proiectare.
5.4.1. Crearea unei reguli de validare pentru un câmp
La introducerea unei valori într-un câmp putem să interzicem tastarea de valori
eronate în acel câmp, impunând o regulă de validare. În general, regula de validare
constă în evaluarea unei expresii logice (a unei condiţii) impuse valorii introduse de
utilizator în câmp.
Operatorii de comparare folosiţi, de obicei, la crearea unei condiţii sunt:
= egal cu
>, < mai mare respectiv mai mic
<=, >= mai mare sau egal, respectiv mai mic sau
egal
<> diferit de
De exemplu, dacă dorim ca salariul persoanelor din tabel să fie mai mare de
5.000.000 ROL, condiţia impusă asupra câmpului Salariu va fi >5000000.
Pentru aceasta:
1. Deschidem fereastra de proiectare a tabelului.
2. Selectăm câmpul căruia vrem să-i stabilim condiţia de validare.
3. Dăm clic pe zona Regulă de validare (Validation Rule) din
partea inferioară a ferestrei şi folosim una din următoarele variante:
 Tastăm direct condiţia dorită (în acest exemplu, >5000000) şi închidem
fereastra.
 Folosim butonul din dreapta zonei Regulă
de validare, ceea ce va deschide dialogul
Generator de expresii
10
De fapt, mutarea câmpului nu afectează cu nimic tabelul deoarece, ulterior, vom putea schimba
ordinea câmpurilor în ferestre, rapoarte, formulare etc.
Access 2007 – Modul A – Pagina 14

(Expression Builder) în care putem crea condiţia respectivă fie


prin tastare directă, fie folosind butoanele aflate sub zona de construire a
condiţiei.11
4. Se confirmă cu OK în dialog şi se închide fereastra de proiectare a bazei.
Dacă tabelul conţine deja valori, Access 2007 testează dacă acestea se conformează
restricţiei impuse şi, dacă nu, afişează un mesaj de avertizare cu următoarele variante:
 Yes – regula de
validare se păstrează şi
testarea continuă;
 No – regula nu se
păstrează şi se continuă
testarea;
 Cancel – întrerupe testarea.
Dacă folosim Yes, valorile actuale din tabel sunt păstrate dar, ulterior, dacă
încercăm să modificăm o valoare astfel încât ea să rămână incorectă sau să
introducem o valoare incorectă în acel câmp,
Acces va refuza acest lucru şi va afişa un
mesaj de eroare care conţine fie un text
standard, fie textul specificat de noi la Text
validare (Validation Text) în
fereastra de proiectare a tabelului.

5.5. Ştergerea unui tabel din baza de date


Dacă decidem că nu mai avem nevoie de unui tabel, putem folosi, după selectarea
lui din fereastra principală a bazei de date, EditDelete sau tasta Delete sau

butonul Delete din bara de instrumente a ferestrei principale a bazei de date.


Access 2007 va cere confirmare pentru ştergerea tabelului.
Atenţie! NU există Undo pentru această operaţie! În plus, dacă tabelul şters
participă la o relaţie cu alte tabele, relaţia se desfiinţează.

6. MODIFICAREA ASPECTULUI UNEI FERESTRE CU DATE


OBSERVAŢIE
Oricare ar fi modificările discutate în subcapitolele de mai jos, la închiderea
ferestrei Microsoft Access 2007 ne va întreba dacă dorim să păstrăm
modificările făcute. Dacă vom răspunde cu Yes (nerecomandabil) la
următoarea afişare a conţinutului tabelului aspectul va fi acelaşi cu cel actual;
în caz contrar, aspectul va fi cel standard.

11
Valorile constante tip dată calendaristică trebuie specificate între caractere # (ca în #05/07/1964),
cele de tip text între ghilimele (ca în "Popescu") iar cele de tip Da/Nu ca -1 sau 0 (corespunzător lui Da
respectiv Nu).
Access 2007 – Modul A – Pagina 15

6.1. Schimbarea dimensiunilor coloanelor şi liniilor


Există două metode:
1. Prin tragere:
 Pentru o coloană, plasăm cursorul de mouse
între numele coloanelor pentru care dorim să modificăm lăţimea de afişare
până când are forma unei bare verticale cu două săgeţi orizontale şi
tragem spre stânga sau spre dreapta până când coloana are lăţimea dorită.12
 Pentru o linie, plasăm cursorul de mouse pe linia separatoare dintre
două înregistrări din stânga ferestrei şi tragem în sus sau în jos până
când linia capătă înălţimea dorită. Toate liniile din fereastră vor primi
noua înălţime.
2. Din meniu:
 Pentru o coloană,
plasăm cursorul în
coloană şi folosim
FormatColumn
width. Se va afişa
un dialog în care, la
Lăţime coloană
(Column width)
vom specifica lăţimea dorită pentru coloană, în număr de caractere.
Revenirea la lăţimea standard se face activând Lăţime standard
(Standard width). Dacă dorim o îngustare/lăţire a coloanei astfel
încât să poată fi cuprinsă cea mai lungă valoare, folosim Potrivire
(Fit).
 Pentru o linie, plasăm cursorul în linie şi folosim FormatRow
Height. Se va afişa un dialog în care, la Înălţime rând (Row
height) stabilim înălţimea dorită pentru linii, în puncte. Revenirea la
înălţimea standard se face activând Înălţime Standard (Standard
height).

6.2. Schimbarea ordinii de afişare a câmpurilor


Iniţial, ordinea de afişare a câmpurilor este cea în care ele apar în structura
tabelului. Putem modifica ordinea de afişare selectând coloana respectivă (clic pe
nume când indicatorul de mouse are forma unei săgeţi în jos – ↓) şi trăgând cu mouse-
ul de nume spre stânga sau spre dreapta până când coloana apare în poziţia dorită.
Operaţia nu afectează ordinea în care câmpurile au fost definite în structura
tabelului.

6.3. Blocarea unui câmp pe ecran


Dacă vrem ca un anumit câmp să nu dispară de pe ecran la o defilare stânga-

12
Această operaţie nu are nici un efect asupra lungimii cu care câmpurile au fost definite în tabel.
Access 2007 – Modul A – Pagina 16

dreapta în tabel, dăm un clic oriunde în coloana câmpului respectiv şi folosim


FormatFreeze Columns. Câmpul respectiv va fi mutat în prima poziţie din
fereastră şi va rămâne fixat acolo astfel încât să fie întotdeauna vizibil, celelalte
câmpuri defilând spre stânga sau spre dreapta pe sub el.
Se pot bloca mai multe câmpuri.
Deblocarea se face folosind FormatUnfreeze All Columns, dar coloana
respectivă nu-şi va relua vechiul loc din fereastră.

6.4. Ascunderea şi reafişarea câmpurilor


Pentru a ascunde un câmp vom selecta coloana
corespunzătoare şi vom folosi FormatHide
Columns. Coloana respectivă va dispărea din fereastră. Se
pot ascunde mai multe câmpuri, cu condiţia să fie vecine.
Reafişarea câmpurilor ascunse se face cu
FormatUnhide Columns, care va afişa un dialog în
care vom activa comutatorii corespunzători coloanelor pe
care dorim să le vedem din nou.

6.5. Liniile de grilă şi culoarea de fond


Plasăm cursorul undeva în tabel şi folosim FormatFoaie de date
(FormatDatasheet). Se va afişa un dialog în care vom specifica următoarele:
 Efect celulă (Cell effect) – stabilim efectele vizuale pentru
celule;
 dacă dezactivăm Orizontale (Horizontal) sau Verticale
(Vertical), liniile de grilă respective nu se vor afişa;
 Culoare linii de grilă (Gridline
color) –culoarea liniilor de grilă;
 Culoare fundal (Background color) –
culoarea de umplere;
 de la Stiluri linie şi chenar selectăm tipul
de linie pentru fiecare latură în parte;
 de la Direcţie (Direction) putem impune
ordinea în care vor fi preluate câmpurile din structura
tabelului (de exemplu, pentru Orientul Mijlociu, unde
unele popoare citesc de la dreapta la stânga).
 pentru a previzualiza aspectul celulelor din fereastră se
foloseşte zona Eşantion (Sample).
Parametrii privind liniile de grilă se pot stabili numai pentru întregul tabel, nu şi
pentru anumite coloane, celule, linii, domenii de celule.

6.6. Modificarea parametrilor de font pentru câmpurile din fereastră


Se plasează cursorul undeva în tabel şi se foloseşte
Access 2007 – Modul A – Pagina 17

FormatFont, după care se aleg parametrii doriţi. Dialogul afişat este asemănător
celui de la Word şi Excel, dar sunt mai puţine opţiuni.
Se poate folosi şi bara de formatare, care se activează cu
ViewToolbarsFormatting (Datasheet).
Parametrii privind fontul se pot stabili numai pentru întregul tabel, nu şi pentru
anumite coloane, linii, celule, domenii etc.

6.7. Sortarea înregistrărilor din tabel


Dacă dorim ca tabelul să fie sortat (ordonat) după valorile dintr-un câmp, vom
plasa cursorul în câmpul respectiv şi vom folosi:
 butoanele Sort Ascending respectiv Sortare descendentă
, după cum dorim ca sortarea să fie crescătoare sau
descrescătoare;
 RecordsSortSort Ascending respectiv Sortare
descendentă.
 Sort Ascending respectiv Sortare descendentă din meniul
contextual al câmpurilor selectate.
OBSERVAŢII
1. Dacă dorim sortarea după mai multe criterii, vom muta câmpurile-
criterii astfel încât să fie vecine în fereastră, în ordinea importanţei lor
ca şi criterii,13 le vom selecta şi vom folosi aceleaşi butoane, în funcţie
de ordinea dorită.
2. Nu putem impune pentru fiecare din câmpurile selectate o anumită
ordine (de exemplu, pentru primul o selectare crescătoare şi pentru al
doilea una descrescătoare).
3. Aceeaşi metodă se poate aplica şi dacă e vorba de o fereastră cu
rezultatele unei interogări.
Revenirea la ordinea iniţială se face cu RecordsRemove Filter/Sort,
înainte de a închide fereastra.
La închiderea ferestrei, vom fi întrebaţi dacă ordinea în care sunt afişate
înregistrările este cea dorită şi pe viitor. Dacă răspundem cu Yes, Microsoft Access
2007 va modifica ordinea lor şi în tabel astfel încât, la o ulterioară deschidere a
acestuia, să le găsim în această ordine.14
Exemplu: Să se sorteze descrescător înregistrările după
câmpurile Studii şi Nume.

6.8. Căutarea unei valori într-un tabel


Putem căuta o anumită valoare fie într-un anumit câmp dintr-un tabel, fie în
întregul tabel. Pentru aceasta, plasăm cursorul în câmpul în care vrem să facem
13
Ordinea în care sunt afişate câmpurile selectate este esenţială, în sensul că al doilea criteriu va
avea efect numai dacă pentru primul există două înregistrări cu aceeaşi valoare.
14
Atenţie! În acest caz, la viitoarea deschidere a ferestrei Access nu va şti care a fost ordinea
iniţială.
Access 2007 – Modul A – Pagina 18

căutarea şi folosim EditFind sau butonul Find din bara de instrumente


Baza de date sau Ctrl+F. În toate cazurile se va afişa un dialog în care vom
specifica următoarele:
 la De căutat (Find What) – valoarea pe care o căutăm;
 la Privire în (Look in) – putem alege Tabel (Table) pentru a
efectua căutarea în întregul tabel (în caz contrar, căutarea se va efectua numai
în câmpul în care se afla cursorul la începerea căutării);
 la Potrivire se poate stabili
modul de căutare, selectând una
din următoarele opţiuni:
 Orice parte din câmp
(Any Part of the
Field)
 Câmpul întreg (Whole
Field)
 Început de câmp (Field
Start)
 La Căutare (Search) se stabileşte direcţia de căutare în raport cu poziţia
indicatorului de înregistrări: În sus (Up), În jos (Down), Toate (All).
 dacă activăm Potrivire litere mari şi mici (Match Case),
Microsoft Access 2007 va ţine cont, la căutare, de diferenţa între litere mari
şi litere mici;
Declanşarea operaţiunii de căutare se face cu butonul Următorul (Find
Next). Putem folosi acest buton şi pentru continuarea căutării.
OBSERVAŢIE
Nu se pot face căutări pentru câmpuri de tip DA/NU.
Exemplu: Să se caute toate înregistrările pentru care
câmpul Funcţia are valoarea 2.

6.9. Filtre
Când lucrăm cu un tabel cu multe înregistrări, putem stabili un filtru prin care vom
obliga Microsoft Access 2007 să afişeze numai înregistrările care îndeplinesc o
anumită condiţie (de exemplu, dorim ca în tabelul afişat să apară numai înregistrările
pentru care prenumele este Nicolae).
Există mai multe tipuri de filtre:
 Filtre care afişează numai înregistrările care, în câmpul curent, au valoarea
respectivă – se creează după plasarea cursorului într-un articol cu valoarea
respectivă, în acel câmp, folosind RecordsFilter by Selection
sau butonul Filter By Selection din bara de instrumente Baza
Access 2007 – Modul A – Pagina 19

de Date.15 În fereastră vom vedea numai înregistrările pentru care e


îndeplinită condiţia.
 Filtre care afişează numai înregistrările care în câmpul curent, au alte valori
decât cea curentă – se creează după plasarea cursorului într-un articol cu
valoarea respectivă, în acel câmp, folosind RecordsFilter
Excluding Selection.16 În fereastră vom vedea numai înregistrările
pentru care nu e îndeplinită condiţia.
Revenirea la afişarea tuturor înregistrărilor se face cu RecordsRemove

Filter/Sorts sau cu butonul Eliminare filtru (Remove Filter) din


aceeaşi bară de instrumente.
Exemple: Să se creeze un filtru pe câmpul Nume, apoi un
filtru care să afişeze numai pe cei născuţi în alte luni
decât octombrie.

7. INDEXAREA UNUI TABEL


Prin indexare, Microsoft Access 2007 menţine liste ascunse de intrări, numite
indecşi, care conţin toate valorile unui câmp, ordonate crescător sau descrescător.
După creare, indecşii permit executarea mai rapidă a interogărilor, căutărilor şi
sortărilor în funcţie de câmpul pe baza căruia a fost definit indexul.
De asemenea, una dintre principalele utilizări ale indecşilor constă în stabilirea
unor relaţii între două sau mai multe tabele.
Cu cât valorile câmpului pe baza căruia a fost definit indexul sunt mai variate, cu
atât indexul este mai eficient.17
Cheia unui tabel reprezintă un ansamblu minim de câmpuri care identifică în mod
unic o înregistrare din tabel.
Ea poate fi formată dintr-un singur câmp (cheie simplă) sau din mai multe câmpuri
(cheie compusă).
La un moment dat, într-un tabel pot exista mai multe atribute cu proprietatea că pot
identifica în mod unic o înregistrare, acestea numindu-se chei candidate. Dintre
acestea putem alege o cheie care se foloseşte efectiv, ea fiind numită cheie primară.
În Microsoft Access 2007 se pot crea două tipuri principale de indecşi:
 un index cheie primară – este unic la nivelul fiecărui tabel şi nu permite
existenţa de valori duplicate sau valori nule în câmpul pe care a fost creat;
 unul sau mai mulţi indecşi normali. La rândul lor, aceştia pot fi de două
15
De exemplu, pentru a vedea numai înregistrările pentru care prenumele este Nicolae, vom da clic
în câmpul Prenume pe o astfel de înregistrare şi vom folosi butonul Filter By Selection.
Atenţie: la câmpurile de tip dată calendaristică, putem face filtrarea şi pentru zi, lună, an, cu condiţia să
selectăm, înainte, porţiunea respectivă din data calendaristică.
16
De exemplu, pentru a vedea înregistrările pentru care prenumele nu este Nicolae, vom da clic în
câmpul Prenume pe o astfel de înregistrare şi vom folosi butonul RecordsFilter
Excluding Selection.
17
Deşi crearea unor indecşi poate mări semnificativ viteza unor operaţii, existenţa multor indecşi
pentru o bază de date încetineşte viteza de lucru la adăugările şi modificările datelor, deoarece, pe lângă
baza de date, Microsoft Access trebuie să actualizeze şi indecşii.
Access 2007 – Modul A – Pagina 20

subtipuri:
 Da (cu dubluri) – permit existenţa valorilor duplicate în câmpul
respectiv;
 Da (fără dubluri) – nu pot exista două înregistrări cu aceeaşi valoare
sau valori nule pentru câmpul respectiv.

7.1. Crearea, modificarea şi ştergerea unui index cheie primară


 Pentru creare, după deschiderea bazei de date vom da un clic pe butonul
Tabele (Tables), vom alege tabela dorită şi vom folosi butonul
Proiect (Design). În partea superioară a ferestrei vom selecta câmpul
pentru care dorim să fie creat un index cheie primară şi vom folosi butonul
Primary Key din bara Table Design.
OBSERVAŢIE
Dacă cheia primară e formată din mai multe câmpuri, selectarea lor se face
ţinând apăsată tasta Shift. În acest caz, simbolul de cheie va apărea lângă
fiecare câmp selectat.
Lângă numele câmpului selectat va apărea o cheie care va indica faptul că
pentru acel câmp a fost definit un index cheie primară.
La închiderea ferestrei de structură a tabelului, Access 2007 va verifica
dacă în acel câmp există valori duplicat şi/sau valori nule şi, dacă da, va
refuza crearea indexului. În acest caz, vom închide fereastra de structură fără
salvare, vom reparcurge tabelul pentru a elimina valorile duplicat şi/sau a
completa valorile nule după care ne vom întoarce la crearea indexului.
 Modificarea unui index cheie primară se face asemănător: clic pe butonul
Primary Key după selectarea câmpului. Dacă există deja un index cheie
primară, cheia se va muta pe noul câmp.
 Ştergerea unui index cheie primară se face selectând câmpul şi dând clic pe
butonul Primary Key.
Exemple: 1. Să se creeze un index cheie primară pe
câmpul Funcţia în tabelul FUNCŢII.
2. Să se încerce crearea unui index cheie primară pe
câmpul Funcţia în tabelul PERSONAL.

7.2. Crearea, modificarea şi ştergerea unui index normal


Pentru a crea un index normal:
1. Selectăm tabelul din fereastra bazei de date şi folosim butonul Proiect
(Design). Se va afişa fereastra de definire a tabelului.
2. Selectăm câmpul pentru care dorim să creăm indexul şi folosim lista ascunsă
Indexat (Indexed) din subfereastra inferioară, în care stabilim tipul de
index:
 Da (Cu dubluri) – Yes (Duplicates OK) – câmpul respectiv
poate conţine valori duplicat;
Access 2007 – Modul A – Pagina 21

 Da (Fără dubluri) – Yes (No duplicates) – câmpul nu


poate conţine valori duplicat.18
3. Se închide fereastra.
Modificarea caracteristicilor unui index normal se face în mod asemănător.
Ştergerea unui index se face la fel, dar folosind varianta Nu (No) în lista ascunsă
Indexat.
Exemple: Să se creeze un index normal, cu dubluri, pe
câmpul Funcţia şi unul fără dubluri pe câmpul Marca.

8. RELAŢII ÎNTRE TABELELE DINTR-O BAZĂ DE DATE


Foarte frecvent, stocarea într-un singur tabel a tuturor datelor implicate în
problema de rezolvat este fie anevoioasă, fie impune, ulterior, prelucrări suplimentare
şi greoaie. De aceea, a apărut posibilitatea de a „împrăştia“ datele în mai multe tabele,
în ideea de a se economisi spaţiu şi de a se evita repetarea aceloraşi valori.
De exemplu, putem crea o relaţie între tabelul PERSONAL şi tabelul FUNCŢII,
prin intermediul câmpului Funcţie, relaţie prin care, ulterior, putem avea la dispoziţie
valori din ambele tabele.
Relaţia între două tabele e o relaţie de subordonare şi, de aceea, la crearea unei
relaţii trebuie să decidem care dintre tabele este tată (tabelul conducător) şi care tabel
fiu (tabelul condus).
Odată relaţia creată, la mutarea pointerului de articol de pe un articol pe altul în
tabelul tată, se va muta, automat, şi pointerul de articol din tabelul fiu pe articolul
corespunzător.
OBSERVAŢII
1. Un tabel considerat ca tabel-tată poate avea mai multe tabele-fiu care, la
rândul lor, pot avea tabele-fiu.
2. Un tabel aflat mai jos în structură (fiu, nepot etc.) nu poate fi tabel-tată
pentru tabelul-tată iniţial.
Din punct de vedere al Microsoft Access 2007, pot exista trei tipuri de relaţii:
 unul-la-mai-multe (One-to-Many) – unei înregistrări din tabelul-tată îi
pot corespunde mai multe înregistrări în tabelul-fiu (nu este obligatoriu);
 unul-la-unul (One-to-One) – unei înregistrări din tabelul-tată îi poate
corespunde o singură înregistrare din tabelul-fiu; este un tip de relaţie rar
folosit;
 mai-multe-la-mai-multe (Many-to-Many) – o înregistrare din tabelul-
tată poate avea mai multe înregistrări corespondente în tabelul-fiu şi
viceversa.
Pentru crearea unei relaţii între două tabele trebuie ca în fiecare tabel care participă
la relaţie să existe un index pentru câmpul de legătură, câmp ce trebuie să fie de
acelaşi tip de dată şi de aceeaşi lungime în ambele tabele.
Tipul de relaţie care poate fi stabilit depinde de tipul indexului pe câmpul de
legătură din fiecare tabel în parte:

18
În acest caz, la închiderea ferestrei Access face aceeaşi verificare ca la indexul cheie primară.
Access 2007 – Modul A – Pagina 22

 unul-la-mai-multe – indexul din tabelul tată trebuie să fie de tip cheie


primară sau normal fără dubluri iar cel din tabelul-fiu de tip normal, cu Da
(cu dubluri);
 unul-la-unul – ambii indecşi (din tabelul tată şi din tabelul fiu) trebuie să
fie cheie primară sau de tip normal, cu Da (fără dubluri);
 mai-multe-la-mai-multe – indecşii pe câmpurile de legătură din tabelul
tată şi tabelul fiu trebuie să fie de tip normal, cu Da (cu dubluri).

8.1. Crearea, modificarea şi ştergerea unei relaţii între tabele


Vom lucra pe un exemplu: având tabelele PERSONAL şi FUNCŢII, unei
înregistrări din tabelul FUNCŢII îi pot corespunde mai multe înregistrări din tabelul
PERSONAL (pot exista mai multe persoane cu aceeaşi funcţie). Ne propunem să
creăm o relaţie tip unul-la-mai-multe între cele două
tabele.
1. Deschidem baza de date şi alegem tabelul PERSONAL. Vom crea pentru el
un index normal pe câmpul Funcţia, cu Da (cu dubluri) (deoarece pot
exista mai multe persoane cu aceeaşi funcţie).
2. Alegem apoi tabelul FUNCŢII şi creăm pentru el un index cheie primară sau
un index normal cu Da (fără dubluri) pe câmpul Funcţia (deoarece
nu pot exista mai multe denumiri de funcţii cu acelaşi cod de funcţie).
3. Folosim ToolsRelationships sau butonul Relationships
din bara de instrumente. Se va deschide un dialog în care apar tabelele bazei
de date.
4. Selectăm pe rând fiecare tabel ce va participa
la relaţie şi folosim, pentru fiecare, butonul
Adăugare (Add) după care închidem
dialogul.
5. Se va afişa fereastra Relaţii
(Relationships) în care apar mici
subferestre pentru fiecare tabel din baza de date.19
6. Vom trage cu mouse-ul dinspre câmpul de relaţie din tabelul-tată (Funcţia
din tabelul PERSONAL) spre câmpul din tabelul-fiu prin care se stabileşte
relaţia (Funcţia din FUNCŢII). Se va afişa un dialog prin care ni se cere,
eventual, alegerea câmpurilor prin care se face legătura dintre tabele. Vom
confirma cu butonul Creare (Create) deoarece câmpurile au fost, deja,
alese.
7. În fereastra Relaţii (Relationships) afişată, între cele două tabele va
apărea o linie
prin care se
sugerează
noua relaţie.
Modificarea
19
Câmpurile pentru care a fost definit un index cheie primară sunt afişate cu bold.
Access 2007 – Modul A – Pagina 23

ulterioară a tipului de relaţie şi/sau a câmpurilor prin care se face asocierea se


realizează dând un clic dreapta pe linia de relaţie şi folosind Edit
Relationships din meniul contextual al liniei de relaţie. Se va afişa acelaşi
dialog, în care putem alege tabelele din relaţie şi câmpurile de legătură din fiecare.
Ştergerea relaţiei se face printr-un clic pe linia de relaţie şi folosirea tastei Delete.

9. INTEROGĂRI
O interogare este un obiect al bazei de date care ne permite extragerea din unul
sau mai multe tabele a înregistrărilor care satisfac anumite criterii.20 După crearea
interogării, ea poate fi executată ori de câte ori este nevoie, obţinând ca rezultat doar
câmpurile dorite şi/sau înregistrările care satisfac o anumită condiţie.

9.1. Crearea unei interogări


Pentru a crea o interogare:
1. În fereastra bazei de date folosim butonul Interogări (Queries),
apoi:
 dăm clic dublu pe varianta Creare interogare în modul
vizualizare proiect (Create query in Design view);
 folosim butonul Nou 
Vizualizare proiect  OK
(NewDesign viewOK).
2. În dialogul afişat selectăm, pe rând,
fiecare tabel ce va participa la interogare şi folosim, pentru fiecare, butonul
Adăugare (Add), după care închidem dialogul.21
În acest moment se va afişa fereastra generatorului de interogări, împărţită
în două subferestre:
 cea de sus conţine subferestre pentru tabelele selectate, cu relaţiile deja
stabilite;
 cea de jos permite specificarea celorlalte elemente ale interogării (câmpuri,
criterii etc.).
9.1.1. Specificarea câmpurilor care vor apărea în rezultatul interogării
Exemplu: Ne propunem să creăm o interogare care să
afişeze câmpurile Nume, Prenume, CNP, Data Naşterii, Studii, Funcţia şi
Adresa din tabelul PERSONAL şi câmpul Denumire funcţie din
tabelul FUNCŢII.
Specificarea câmpurilor se face alegând, pe rând, fiecare câmp, din listele ascunse
de pe linia Câmp (Field).
20
Dacă e nevoie de date din mai multe tabele, ele trebuie legate prin relaţii.
21
Dacă, ulterior, vrem să mai adăugăm un tabel la interogare putem face acest lucru cu

QueryShow table sau cu butonul Show table după care, din dialogul afişat, alegem
tabelul dorit. De asemenea, dacă un tabel devine inutil într-o interogare, îl putem elimina selectându-l
din subfereastra superioară şi folosind QueryRemove Table sau tasta Delete.
Access 2007 – Modul A – Pagina 24

OBSERVAŢII
1. Dacă la interogare participă două sau mai multe tabele, în listele
ascunse de la Câmp Acces va prefixa numele fiecărui câmp cu numele
tabelului din care provine câmpul respectiv (de exemplu,
personal.funcţia înseamnă că se va afişa câmpul Funcţia din
tabelul PERSONAL iar functii.funcţia înseamnă că se va afişa
câmpul Funcţia din tabelul FUNCŢII).
2. Numele tabelului din care provine fiecare câmp este afişat pe linia
Tabel (Table).
3. Ordinea în care sunt alese câmpurile are importanţă, în sensul că va fi
ordinea în care vor fi afişate câmpurile în rezultatul interogării. Dacă
actuala ordine nu e cea dorită, putem muta câmpurile ca pe orice
coloană dintr-o fereastră de date.
Schimbarea ordinii de afişare a câmpurilor se face la fel ca la ferestrele de date.
9.1.2. Testarea interogării
Se recomandă ca de oricâte ori facem o modificare asupra unei interogări să
verificăm dacă rezultatele sunt cele dorite.
Pentru aceasta putem folosi QueryRun sau butonul Run din bara de
instrumente. Se va afişa o fereastră cu rezultatul interogării.
Revenirea la fereastra de proiectare se face cu ViewDesign View sau cu
butonul Vizualizare (View) din bara de instrumente.
OBSERVAŢIE
Se va evita, după testare, închiderea ferestrei cu rezultate, operaţie care ne
va întoarce la fereastra principală a bazei de date.
9.1.3. Ordonarea rezultatelor după unul sau mai multe criterii
Dacă dorim ca în rezultatul interogării înregistrările să fie ordonate după unul sau
mai multe criterii, vom folosi lista ascunsă Sortare (Sort) pentru câmpul care
constituie criteriu de sortare, din care vom alege ordinea în care se face sortarea
(Ascendentă – Ascending, Descendentă – Descending, nesortat –
unsorted).
Putem alege mai multe câmpuri drept criteriu de sortare, dar trebuie să ţinem cont
că:
 Ordinea în care sunt alese aceste criterii este importantă, în sensul că al
doilea criteriu va avea efect numai dacă pentru primul există valori duplicat.
 Câmpul care este criteriu principal de sortare trebuie să fie în stânga
câmpului criteriu secundar (nu neapărat vecine).
Exemplu: Să se ordoneze rezultatele interogării
crescător după Studii şi descrescător după Nume.
9.1.4. Ascunderea/reafişarea unor câmpuri din rezultat
Putem impune ca anumite câmpuri să nu se afişeze, dezactivând comutatoarele
Access 2007 – Modul A – Pagina 25

corespunzătoare câmpurilor respective din linia Afişare (Show).


Reafişarea se face prin activarea comutatoarelor.
9.1.5. Specificarea înregistrărilor care vor apărea în rezultatul
interogării
În mod normal, în rezultatul interogării apar toate articolele din tabelele selectate
iniţial. Putem impune prezentarea în rezultat numai a articolelor care satisfac anumite
condiţii.
Pentru aceasta, în linia Criterii (Criteria) de sub câmpul respectiv vom
specifica o condiţie de selectare a înregistrărilor. În rezultat vor apărea numai
înregistrările care satisfac condiţia respectivă.
Condiţia constă, în general, în compararea a două valori: cea din câmp şi valoarea
pe care o specificăm.
REGULĂ
Constantele de tip text trebuie introduse între ghilimele iar cele de tip dată
calendaristică între caractere diez (#).
Pentru comparare se pot folosi următorii operatori:
= valoare Rezultatul va conţine numai articolele pentru care
câmpul are valoarea specificată.
Exemplu: =2 sub câmpul Funcţia îi va extrage
numai pe cei care au funcţia 2.
< valoare Rezultatul va conţine numai articolele pentru care
câmpul are o valoare mai mică decât cea
specificată.
Exemplu: <3 sub câmpul Funcţia îi va extrage
numai pe cei care au funcţia 1 sau 2.
> valoare Rezultatul va conţine numai articolele pentru care
câmpul are o valoare mai mare decât cea
specificată.
Exemplu: >2 sub câmpul Funcţia îi va extrage
numai pe cei care au funcţia cel puţin egală cu 3.
<= valoare Rezultatul va conţine numai articolele pentru care
câmpul are o valoare cel puţin egală cu cea
specificată.
>= valoare Rezultatul va conţine numai articolele pentru care
câmpul are o valoare cel mult egală valoarea
specificată.
<> valoare Rezultatul va conţine numai articolele pentru care
câmpul nu are valoarea specificată.
Exemplu: <>2 sub câmpul Funcţia îi va
extrage numai pe cei care nu au funcţia 2.
IN (val_1;val_2;...) Rezultatul va conţine numai articolele pentru care
câmpul are una din valorile specificate în listă.
Exemplu: IN("popescu";"ionescu") sub
câmpul Nume îi va extrage numai pe cei care se
Access 2007 – Modul A – Pagina 26

numesc popescu sau ionescu.


BETWEEN val_min AND Rezultatul va conţine numai articolele pentru care
val_max
câmpul are valoarea specificată.
Exemplu: BETWEEN 400 AND 650 sub
câmpul Salariu îi va extrage numai pe cei care
au salariul între aceste valori (inclusiv).
NOT valoare Rezultatul va conţine numai articolele pentru care
câmpul nu are valoarea specificată (în acest caz,
operatorul este echivalent cu <>).
El este mai des folosit pentru a nega operatorii IN
şi BETWEEN, de exemplu:
 NOT IN ("george";"vasile") sub
câmpul Prenume va extrage pe cei la care
prenumele nu e george sau vasile;
 NOT BETWEEN 200 AND 375 sub
câmpul Salariu îi va extrage pe cei la
care salariul este mai mic de 200 sau mai
mare de 375.
NOT NULL sau IS NOT Rezultatul va conţine numai articolele pentru care
NULL câmpul sub care se află operatorul nu este gol.22
NULL sau IS NULL Rezultatul va conţine numai articolele pentru care
câmpul sub care se află operatorul este gol.
Pentru a introduce un criteriu de selectare avem două posibilităţi:
1. Introducerea criteriului prin tastare directă sub câmp, în linia Criterii
(Criteria) din fereastra de proiectare a interogării.
2. Plasând cursorul sub câmp, în linia
Criterii din fereastra de proiectare
a interogării şi folosind butonul Build
din bara de instrumente. Se va
afişa dialogul Generatorului de
expresii, în care vom putea construi
condiţia dorită. Dialogul conţine:
 o zonă în care vom construi
condiţia, în partea superioară;
 un set de butoane din care putem
alege operatorii care apar în
condiţie;
 o listă cu tabelele din care putem prelua câmpuri şi cu operatorii
posibili;
 o listă cu câmpurile din tabelul selectat în prima listă;
 o listă cu formatul de afişare.
22
Atenţie! Un câmp de tip Text nu este considerat gol dacă conţine numai spaţii iar un câmp
numeric nu este gol dacă conţine valoarea 0.
Access 2007 – Modul A – Pagina 27

OBSERVAŢII
1. Dacă dorim să specificăm mai multe condiţii de selectare, le putem lega,
în zona expresiei, prin doi operatori logici:
 And – pentru ca o înregistrare să fie inclusă în rezultat trebuie ca ea
să îndeplinească ambele condiţii (de exemplu, dacă specificăm
Functia>=3 And Funcţia<=5, în rezultat vor apărea toate
persoanele pentru care codul de funcţie are o valoare 3...5.
 Or – pentru ca o înregistrare să fie inclusă în rezultat, trebuie să
îndeplinească măcar una dintre condiţiile respective (de exemplu,
dacă specificăm Nume="Ionescu" Or Nume="Popescu", în
listă vor apărea toate persoanele numite Ionescu sau Popescu.23
2. Putem nega o anumită condiţie folosind operatorul Not, care va
determina afişarea în rezultat a articolelor care nu satisfac condiţia
specificată. De exemplu, dacă dorim să afişăm persoanele pentru care
prenumele nu este Nicolae, vom specifica drept condiţie Not
Prenume="Nicolae"24.
La închiderea dialogului Generatorului de expresii, Access 2007 va afişa condiţia
sub câmpul selectat iniţial.
Indiferent de metoda folosită (scriere directă a condiţiei în fereastra de interogare
sau folosirea Generatorului de expresii), efectul va fi acelaşi.
9.1.6. Specificarea criteriilor pentru mai multe câmpuri
În mod normal, condiţiile specificate pentru diferite câmpuri sunt legate prin And,
în sensul că, pentru ca o înregistrare să fie inclusă în rezultat, trebuie ca acea
înregistrare să îndeplinească toate condiţiile.
Dacă dorim ca o înregistrare să fie inclusă în rezultat dacă îndeplineşte cel puţin
una din condiţii, vom plasa o condiţie pe linia Criterii (Criteria) sub câmpul
corespunzător iar cealaltă pe linia Sau (Or) sub câmpul respectiv.
De exemplu, dacă dorim ca în rezultat să apară toate înregistrările pentru care
prenumele este Nicolae sau înregistrările pentru care funcţia este 2, vom plasa în
linia Criterii de la câmpul Nume condiţia Nume="Nicolae" iar în linia Sau de la
câmpul Funcţia condiţia Funcţia=2.
EXEMPLE
1. Să se creeze, folosind Generatorul de expresii, o interogare care să extragă
numai persoanele născute după 1 ianuarie 1960 şi la care codul de funcţie
este 2. Pentru aceasta:
a. În fereastra de proiectare vom plasa cursorul în linia Criterii sub
câmpul Data nasterii şi vom folosi butonul Build din bara de
instrumente. În dialogul Generatorului de expresii vom da clic dublu pe
Tabele, apoi pe tabelul Personal, apoi, în lista de câmpuri, pe câmpul
Data naşterii. Vom tasta, apoi, în zona de expresie, >01/01/1960

23
De fapt, echivalent cu IN("Popescu";"Ionescu).
24
De fapt, echivalent cu <>"Nicolae".
Access 2007 – Modul A – Pagina 28

şi vom confirma cu OK. 25


b. Vom plasa apoi cursorul în linia Criterii sub câmpul Funcţia şi
vom folosi butonul Build din bara de instrumente. În dialogul
Generatorului de expresii vom da clic dublu pe Tabele, apoi pe tabelul
Personal, apoi pe câmpul Funcţia. Vom tasta, apoi, în zona de
expresie, =2 şi vom confirma cu OK.
La executarea interogării, vom observa că în rezultat sunt afişate numai
înregistrările care satisfac ambele condiţii specificate.
2. Să se creeze, folosind prima scrierea directă în fereastra de proiectare, o
interogare care să aibă ca rezultat articolele la care Funcţia este 1 sau
Numele este mai mare decât Radu.
a. În fereastra de interogare, sub câmpul Funcţia, scriem condiţia =1.
b. Sub câmpul Numele scriem condiţia >"Radu".

9.2. Salvarea interogării


Se face la închiderea ferestrei sau cu butonul
Save din bara de instrumente. Dacă e vorba
de o interogare nouă, se va cere un nume pentru ea,
care nu poate fi identic cu al unui tabel din baza de
date.

9.3. Modificarea unei interogări


Se foloseşte butonul Interogări (Queries) din fereastra Baza de Date şi se
foloseşte butonul Proiect (Design). Se va afişa acelaşi dialog ca la creare, în care
vom face modificările dorite.
9.3.1. Ştergerea unor câmpuri din interogare
Se face prin selectarea coloanei câmpului respectiv şi folosirea tastei Delete.
9.3.2. Adăugarea unor câmpuri la o interogare
Se selectează coloana în stânga căreia vrem să apară noul câmp şi se foloseşte
InsertColumns, după care alegem câmpul dorit şi caracteristicile sale.

9.4. Executarea unei interogări


Ulterior, ori de câte ori dorim să executăm interogarea, vom da clic dublu pe ea în
fereastra Baza de Date, după ce am folosit butonul Interogări (Queries).

9.5. Ştergerea unei interogări


Dacă decidem că nu mai avem nevoie de o interogare, putem folosi, după
selectarea ei din fereastra a bazei de date, EditDelete sau tasta Delete sau

butonul Delete din bara de instrumente a ferestrei bazei de date.


25
Datele calendaristice vor fi afişate, ulterior, la Criteria, între caractere diez (#).
Access 2007 – Modul A – Pagina 29

Access 2007 va cere confirmare pentru ştergerea interogării.


Atenţie! NU există Undo pentru această operaţie!

10.FORMULARE
Formularele reprezintă interfaţa
principală între utilizator şi o bază de
date Access 2007. Ele sunt obiecte
componente ale bazei de date care
permit introducerea şi modificarea
datelor într-o manieră mai atractivă
decât modul de afişare Datasheet View, discutat mai sus.

10.1. Crearea unui formular


Pentru crearea unui formular:
1. Folosim butonul Formulare (Forms) a ferestrei Baza de Date,
apoi folosim una din următoarele variante:
 Creare formular utilizând expertul (Create by
using wizard);
 NouExpert FormularOK (NewForm WizardOK).
În ambele cazuri va începe un set de dialoguri
(wizard) în care vom menţiona conţinutul şi
aspectul noului formular.
2. Din lista Tabele/Interogări
(Tables/Queries) selectăm tabelul din care
provin câmpurile şi apoi, din lista Câmpuri
disponibile (Available fields)
selectăm câmpurile respective. Ele se vor muta în lista Câmpuri
selectate (Selected fields). Putem alege, pe rând, câmpuri din
mai multe tabele, legate prin relaţie în baza de date. Transferul câmpurilor
între cele 2 liste se face cu ajutorul butoanelor > , >> , < , <<. Pentru
trecerea la pasul următor vom folosi Next.
OBSERVAŢIE
Ordinea în care selectăm câmpurile este ordinea în care
vor fi ele afişate în formular.
3. Dacă am ales câmpuri din mai multe tabele, vom fi
întrebaţi care dorim să fie tabelul conducător în viitorul
formular (dacă am ales câmpuri atât din
FUNCŢII cât şi din PERSONAL, vom alege, de
exemplu, prin personal). Trecerea la dialogul
următor se face cu Next.
4. Ni se va cere să alegem modul de aşezare a
câmpurilor în formular, prin butoanele radio
alăturate. Cel mai frecvent utilizat este modul
Access 2007 – Modul A – Pagina 30

Columnar (câmpurile aşezate unul sub altul). Trecerea la dialogul următor


se face cu Next.
5. Aici alegem stilul de afişare pentru formular.
Deşi există mai multe variante, se recomandă
alegerea variantei Standard. Trecerea la dialogul
următor se face cu Next.
6. În dialogul final vom specifica numele
formularului şi vom specifica dacă dorim să
deschidem formularul pentru a începe introducerea
şi/sau editarea datelor. La terminare, vom confirma
cu Finish, care va deschide formularul pentru
începerea afişării/introducerii datelor respectiv va
deschide generatorul de formulare pentru modificarea
formularului.
Exemplu: Să se creeze un formular care să
conţină câmpurile Nume, Prenume, CNP, Data naşterii,
Studii, Adresa, Salariu şi Funcţia din tabelul
PERSONAL şi câmpul Denumire funcţie din tabelul
FUNCŢII.

10.2. Utilizarea unui formular


După creare, putem utiliza formularul ori de câte ori avem nevoie pentru a adăuga
înregistrări în baza de date sau pentru a le modifica pe cele existente.
Pentru aceasta, în fereastra Baza de Date alegem butonul Formulare
(Forms) şi dăm un clic dublu pe numele formularului sau selectăm formularul şi
folosim butonul Deschidere (Open). Access 2007 va afişa formularul şi, în partea
inferioară, o bară de butoane pentru
deplasare la o anumită înregistrare sau pentru adăugarea unora noi.
Adăugarea unui articol se face prin completarea valorilor din câmpuri după
folosirea butonului din bara afişată sau cu InsertNew Record.
Ştergerea unui articol se face după deplasarea la el, folosind butonul Delete
Record din bara de instrumente sau cu EditDelete Record. Access
2007 va cere confirmare pentru ştergere.

10.3. Adăugarea şi modificarea textului din antetul sau subsolul


formularului
Pentru a adăuga un text în antetul/subsolul unui formular:
Access 2007 – Modul A – Pagina 31

1. Folosim butonul Formulare (Forms) din fereastra bazei de date şi apoi

butonul Proiect (Design) din bara de instrumente. Access

2007 va deschide fereastra Constructorului de formulare, în care vom putea


efectua modificările dorite. În plus, se va afişa şi bara de instrumente
Toolbox.
2. Pentru a putea introduce text în antet, va trebui să modificăm, întâi, înălţimea
sa (iniţial 0). În acest scop, tragem cu mouse-ul în jos de bara separatoare
aflată între linia Antet Formular (Form Header) şi linia
Detaliere (Detail), atunci când cursorul de mouse are forma unei linii
orizontale cu două săgeţi verticale.
3. Din bara de instrumente Toolbox vom alege butonul Label ( ).
4. Descriem, prin tragere cu mouse-ul, un dreptunghi în care scriem textul
antetului.
5. Tastăm textul şi confirmăm cu un clic în afara lui.
Pentru un subsol procedăm la fel, cu deosebirea că tragem cu mouse-ul de linia
aflată sub bara Subsol formular (Form Footer).

10.4. Introducerea unei imagini într-un formular


Pentru a insera o imagine într-un formular:
1. Folosim butonul Image din bara de instrumente Toolbars.
2. Descriem, prin tragere cu mouse-ul, zona în care va apărea imaginea
(indiferent că e vorba de banda de antet, cea de detalii sau cea de subsol).
3. În acest moment apare un dialog în care alegem fişierul imagine pe care vrem
să-l inserăm.
În mod normal, Acces inserează în dreptunghiul descris fie
doar o porţiune din imagine, fie imaginea întreagă dar lăsând
Access 2007 – Modul A – Pagina 32

spaţiu liber pe lângă ea. Pentru a avea întreaga imagine, dăm clic dreapta pe imagine,
operaţie care va afişa un dialog în care, la Mod afişare, alegem:
 Zoom – Access 2007 va afişa întreaga imagine, pe cea mai mare dimensiune
posibilă în dreptunghiul descris;
 Lărgit – Access 2007 va umple cu imaginea întregul dreptunghi, chiar
dacă o va deforma.

10.5. Modificarea unui formular


Nu întotdeauna formularul creat ca mai sus corespunde perfect dorinţelor noastre.
Pentru a modifica un formular după ce a fost creat, folosim butonul Formulare
(Forms) în fereastra bazei de date, selectăm formularul de modificat şi utilizăm
butonul Proiect (Design). Se va afişa o fereastră şi o bară de instrumente, cu care
vom putea efectua diverse modificări asupra formularului.
Operaţiile uzuale sunt:
 mutarea unui câmp sau a unui text – se dă un clic pe câmp sau text, se
plasează cursorul de mouse pe colţul din dreapta-sus al dreptunghiului
înconjurător până când capătă forma unei mâini şi se trage până când o
biectul ajunge în poziţia dorită.
 schimbarea dimensiunii unui câmp sau text – se dă un clic pe obiect şi se
trage cu mouse-ul de unul din cele 8 puncte negre care apar pe laturile şi
în colţurile obiectului.
 fontul, culoare de text, culoarea de fundal, mărimea şi faptul că valorile
sunt afişate cu bold, italic şi/sau underline se determină, după selectarea
câmpului/textului, folosind listele ascunse şi butoanele din bara de
instrumente Formatting.
La închiderea ferestrei, vom fi întrebaţi dacă dorim să salvăm formularul cu noul
aspect.

10.6. Crearea unui formular prin care utilizatorul să aibă acces numai
la anumite înregistrări
Prin metoda de mai sus, utilizatorul va avea acces prin intermediul formularului la
toate înregistrările din tabelele selectate.
Dacă dorim să creăm un formular prin care să avem acces numai la anumite
înregistrări, trebuie să parcurgem doi paşi majori:
1. Crearea unei interogări prin care să impunem condiţiile de selectare
respective a înregistrărilor, eventual câmpurile dorite şi ordinea de selectare a
înregistrărilor.
2. Crearea formularului – se procedează ca mai sus, singura diferenţă fiind că la
pasul 1 nu se aleg tabelele din care provin înregistrările, ci interogarea
respectivă.
Exemplu: Să se creeze un formular la care utilizatorul
să aibă acces numai la persoanele cu studiile DA (-1).
Access 2007 – Modul A – Pagina 33

10.7. Ştergerea unui formular


Dacă decidem că nu mai avem nevoie de un formular, putem folosi, după
selectarea lui din fereastra bazei de date, EditDelete sau tasta Delete sau

butonul Delete din bara de instrumente a ferestrei bazei de date.


Access 2007 va cere confirmare pentru ştergerea formularului.
Atenţie! NU există Undo pentru această operaţie!

11. RAPOARTE
Un raport este un obiect din baza de date care permite extragerea datelor din unul
sau mai multe tabele, în general în scopul listării.
Ca şi la interogări şi la formulare, pentru crearea şi gestionarea rapoartelor există
butonul Rapoarte (Reports) în fereastra bazei de date care determină afişarea
unei liste cu rapoartele existente în baza de date.

11.1. Crearea unui raport


Exemplu: Ne propunem să creăm un raport care să conţină
câmpurile Nume, Prenume, CNP, Studii, Data angajării, Adresa, Funcţia, Salariul
din tabelul PERSONAL şi Denumirea funcţiei din tabelul
FUNCŢII. Articolele vor fi grupate după câmpul Studii, la
sfârşitul fiecărui grup fiind afişate suma şi media
salariilor pentru acele persoane. Orientarea pe hârtie va
fi Portrait.
Pentru crearea unui raport există două variante:
 Creare raport utilizând
Expertul (Create report by
using wizard);
 butonul Nou (New) care deschide
fereastra Raport Nou în care
selectăm opţiunea Expert Raport
(Report wizard).
În ambele cazuri va începe un set de dialoguri (wizard) în care vom menţiona
conţinutul şi aspectul noului raport:
1. Din lista Tabele/Interogări
(Tables/Queries) selectăm tabelul din
care provin câmpurile şi apoi, din lista
Câmpuri disponibile
(Available Fields) selectăm
câmpurile respective. Ele se vor muta în
lista Câmpuri selectate
(Selected Fields). Putem alege, pe
rând, câmpuri din mai multe tabele, legate prin relaţie în baza de date.
Access 2007 – Modul A – Pagina 34

Transferul câmpurilor între cele 2 liste se face cu ajutorul butoanelor > ,


>> , < , << sau cu un clic dublu pe câmp în lista respectivă. Pentru
trecerea la pasul următor, vom folosi Next.
OBSERVAŢIE
Ordinea în care vor apărea câmpurile în raport este aceeaşi cu
ordinea în care ele sunt selectate.
2. Dialogul următor se afişează numai dacă, în dialogul anterior, am ales
două sau mai multe
tabele; aici putem stabili
care este tabelul
„conducător“. Alegerea
acestuia are importanţă
dacă dorim ca în raport articolele să fie grupate după un anumit criteriu.
Vom alege, aici, prin personal şi vom confirma cu Next.
3. În dialogul următor vom alege, dacă dorim, câmpul sau câmpurile care
dorim să fie criterii de grupare.
În mod normal, înregistrările vor
fi incluse în raport în ordinea în care
ele sunt găsite în tabele. Totuşi,
putem impune gruparea lor după un
câmp, un grup constând în toate
înregistrările care au aceeaşi valoare
pentru câmpul-criteriu (de exemplu,
la o grupare după câmpul Funcţia se
va crea un grup pentru funcţia 1,
altul pentru funcţia 2 etc.).
Se pot impune mai multe criterii de grupare, dar vom ţine cont că
ordinea în care sunt specificate aceste criterii este importantă, în sensul că
pentru primul criteriu se vor crea grupuri principale, în care se vor crea
subgrupuri pentru al doilea criteriu etc. De exemplu:
 dacă am ales drept prim criteriu câmpul Studii şi ca al doilea criteriu
câmpul Funcţia, se vor crea grupuri principale pentru toate
persoanele cu aceleaşi studii iar în cadrul acestor grupuri se vor crea
subgrupuri pentru toate persoanele cu acelaşi cod de funcţie;
 dacă am ales drept prim criteriu câmpul Funcţia şi ca al doilea
criteriu câmpul Studii, se vor crea grupuri principale pentru toate
persoanele cu acelaşi cod de funcţie iar în cadrul acestor grupuri se vor
crea subgrupuri pentru toate persoanele cu aceleaşi studii.
Pentru fiecare criteriu se va crea, în raport, câte o bandă antet de grup
şi o bandă subsol de grup, în care vom putea plasa valori statistice.
Selectarea unui criteriu se face dând un clic dublu pe numele câmpului
în lista din stânga sau selectând câmpul şi folosind butonul >.
Deselectarea se face cu butonul <.
Trecerea la dialogul următor se face cu Next.
Access 2007 – Modul A – Pagina 35

4. În acest dialog putem stabili 1...4 criterii după


care dorim sortarea articolelor în cadrul unui
grup (ordinea de stabilire este importantă).
Pentru aceasta, din listele ascunse 1...4 alegem
câmpul care dorim să fie criteriu de sortare
după care, pentru fiecare, putem stabili ordinea
în care se face sortarea, folosind butonul
Ascending/Descending alăturat fiecărei
liste în parte.
Pentru fiecare câmp numeric selectat la
pasul 1 putem alege, folosind butonul
Summary Options, dacă dorim să se
calculeze o sumă (Sum), o
medie (Avg), o valoare
minimă (Min) sau o
valoare maximă (Max).
Locul unde vor apărea
fiecare din aceste valori
statistice se stabileşte prin
butoanele radio Detail
and Summary – valorile se vor afişa atât în banda de detalii cât şi în
banda de rezumat a raportului
respectiv Summary Only –
numai în banda de rezumat.
Trecerea la pasul următor se
face cu Next.
5. În acest dialog putem alege
modul de aşezare în pagină a
raportului (butoanele radio de
la Layout), orientarea hârtiei
pe care se va lista raportul
(Orientation) şi o
eventuală trunchiere a valorilor
câmpurilor astfel încât să încapă toate pe lăţimea hârtiei (dacă este activat
Adjust the field width so all fields fit on a
page, Microsoft Access 2007 va trunchia unele câmpuri
astfel încât toate să încapă pe lăţimea hârtiei). Trecerea la
pasul următor se face cu Next.
6. La acest penultim pas vom alege stilul de listare pentru
raport. Trecerea la pasul următor se face cu Next.
7. La ultimul pas vom putea stabili un titlu pentru raport şi
vom putea impune dacă dorim să trecem la previzualizarea
raportului (Examinare raport – Preview the
Access 2007 – Modul A – Pagina 36

report) sau să modificăm raportul în fereastra de proiectare


(Modificare proiect formular – Modify the report's
design). Terminarea se face cu Finish.

11.2. Modificarea unui raport


Un raport, odată creat, poate fi modificat conform dorinţelor, selectându-l din
fereastra Rapoarte şi folosind butonul Proiect (Design). Se va afişa o fereastră ce
conţine macheta raportului, în care vom face modificări asemănătoare cu cele de la
formulare.
Operaţiile de modificare a unui raport sunt destul de frecvente, deoarece Access
2007 încearcă să plaseze toate valorile câmpurilor pe aceeaşi linie şi acest lucru nu
este întotdeauna posibil. În aceste cazuri:
 Câmpurile de tip Text sau Memo vor fi trunchiate.
 Câmpurile de tip numeric vor fi afişate în format cu exponent.
În ambele cazuri se impune lăţirea lor (eventual, îngustarea altora) pentru a se afişa
întreaga valoare dorită.
Operaţiile uzuale sunt:
 mutarea unui câmp sau a unui text – se dă un clic pe câmp sau text, se
plasează cursorul de mouse pe colţul din dreapta-sus al dreptunghiului
înconjurător până când capătă forma unei mâini şi se trage până când
obiectul ajunge în poziţia dorită.
 schimbarea dimensiunii unui câmp sau text – se dă un clic pe obiect şi se
trage cu mouse-ul de unul din cele 8 puncte negre care apar pe laturile şi
în colţurile obiectului.
 fontul, culoare de text, culoarea de fundal, mărimea şi faptul că valorile
sunt afişate cu bold, italic şi/sau underline se determină, după selectarea
câmpului/textului, folosind listele ascunse şi butoanele din bara de
instrumente Formatting.
La închiderea ferestrei, vom fi întrebaţi dacă dorim să salvăm raportul cu noul
aspect.

11.3. Adăugarea şi modificarea textului din antetul sau subsolul


raportului
Pentru a adăuga un text în antetul/subsolul unui formular:
1. Folosim butonul
Reports
(Rapoarte) din
fereastra bazei de date
şi apoi butonul
Proiect (Design)

din bara de
instrumente. Access
Access 2007 – Modul A – Pagina 37

2007 va deschide fereastra Constructorului de rapoarte, în care vom putea


efectua modificările dorite. În plus, se va afişa şi bara de instrumente
Toolbox.

2. Din bara de instrumente Toolbox vom alege butonul Label ( ).


3. Descriem, prin tragere cu mouse-ul, un dreptunghi în care scriem textul
antetului.
4. Tastăm textul şi confirmăm cu un clic în afara lui.
Pentru un subsol procedăm la fel.

11.4. Introducerea unei imagini într-un raport


Pentru a insera o imagine într-un formular:
1. Folosim butonul Image din bara de instrumente Toolbars.
2. Descriem, prin tragere cu mouse-ul, zona în care va apărea imaginea
(indiferent că e vorba de banda de antet, cea de detalii sau cea de subsol).
3. În acest moment apare un dialog în care alegem fişierul
imagine pe care vrem să-l inserăm.
În mod normal, Access 2007 inserează în dreptunghiul descris
fie doar o porţiune din imagine, fie imaginea întreagă dar lăsând
spaţiu liber pe lângă ea. Pentru a avea întreaga imagine, dăm clic
dreapta pe imagine, operaţie care va afişa un dialog în care, la
Mod afişare, alegem:
 Zoom – Access 2007 va afişa întreaga imagine, pe cea
mai mare dimensiune posibilă în dreptunghiul descris;
 Lărgit – Access 2007 va umple cu imaginea întregul
dreptunghi, chiar dacă o va deforma.

11.5. Gruparea înregistrărilor după anumite câmpuri


Dacă nu am grupat înregistrările după unul sau mai multe câmpuri din faza creării
raportului, putem face acest lucru în fereastra Constructorului de rapoarte astfel:
1. Folosim ViewSorting and
Grouping sau butonul cu acelaşi

nume din bara de instrumente


Formatting (Form/Report).
2. Se va afişa un dialog în care stabilim,
prin alegere din listele ascunse din
coloana Câmp/Expresie
(Field/Expression), câmpurile
care vrem să fie criterii de grupare şi
ordinea de ordonare pentru fiecare –
coloana Ordinea de sortare (Sort Order).
3. În zona Proprietăţi grupuri (Group Properties) putem stabili
Access 2007 – Modul A – Pagina 38

diferite opţiuni privitoare la modul de grupare a datelor.

11.6. Crearea unui raport în care să se afişeze numai anumite


înregistrări
Prin metoda de mai sus, la tipărire se vor obţine toate înregistrările din tabelele
selectate.
Dacă dorim să creăm un raport care să conţină numai articolele care îndeplinesc
anumite condiţii, trebuie să parcurgem doi paşi majori:
1. Crearea unei interogări prin care să impunem condiţiile de selectare
respective a înregistrărilor, eventual câmpurile dorite şi ordinea de selectare a
înregistrărilor.
2. Crearea raportului – se face ca mai sus, singura diferenţă fiind că, la pasul 1
nu se aleg tabelele din care provin înregistrările, ci interogarea respectivă.
Exemplu: Să se creeze un raport care să conţină
câmpurile Nume, Prenume, Funcţia, Data naşterii şi să conţină numai
persoanele cu Funcţia 2.

11.7. Ştergerea unui raport


Dacă decidem că nu mai avem nevoie de un raport, putem folosi, după selectarea
lui din fereastra bazei de date, EditDelete sau tasta Delete sau butonul Delete

din bara de instrumente a ferestrei bazei de date.


Access 2007 va cere confirmare pentru ştergerea raportului.
Atenţie! NU există Undo pentru această operaţie!

12.TIPĂRIREA CONŢINUTULUI PENTRU UN


TABEL/FORMULAR/REPORT/ O INTEROGARE
Ca şi la Word şi Excel, listarea ar trebui precedată de o previzualizare a aşezării în
pagină a conţinutului.
12.1.1. Previzualizarea conţinutului
Indiferent de obiectul selectat (tabel, formular, raport, interogare), se va folosi,
după selectarea acestuia:
 FilePrint Preview;
 butonul Print Preview din bara Database.
Se va afişa o fereastră asemănătoare celei din Word sau
Excel cu conţinutul paginilor obiectului.
Dacă nu ne convin orientarea paginii şi/sau marginile, vom
Access 2007 – Modul A – Pagina 39

folosi FilePage Setup26 şi, în dialogul afişat, putem stabili:


 marginile – pagina de dialog Margini (Margins) marginile de pagină
(Sus, Jos, Stânga, Dreapta);
 în pagina Pagină – orientarea hârtiei (Tip portret sau Tip
vedere) şi mărimea acesteia (Dimensiune);
 în cazul rapoartelor – în pagina Coloane – tipărirea pe mai multe
coloane a raportului (pentru rapoarte înguste pe hârtie mare – Număr
de coloane, Dimensiune coloană, Aspect coloană.
Revenirea la fereastra principală se face cu butonul Close din bara de
previzualizare sau la închiderea ferestrei de
previzualizare.
Exemplu: Să se
previzualizeze tabelul
PERSONAL şi să se ajusteze
lăţimile câmpurilor astfel
încât să încapă toate pe o
hârtie A4, orientare Tip vedere.
12.1.2. Tipărirea propriu-zisă
După ce am efectuat corecturile de rigoare privind orientarea în pagină, marginile,
mărimea hârtiei etc., vom folosi FilePrint sau butonul Imprimare din bara
de instrumente Baza de date (în cazul folosirii butonului tipărirea va începe
imediat, fără a mai putea specifica şi alte opţiuni).
În dialogul afişat la FilePrint vom putea specifica:
 domeniul de pagini pe care dorim să-l
listăm (Interval de imprimare);
se aplică aceleaşi reguli ca la Word şi
Excel;
 numărul de copii dorite (Copii) şi
ordinea în care dorim să obţinem paginile
copiilor (Asamb.);
 în cazul formularelor şi tabelelor, putem
tipări doar anumite înregistrări (numai
consecutive), dar, pentru aceasta trebuie ca
înainte de FilePrint să le selectăm după
care, în dialogul de imprimare, vom folosi
butonul radio Selected Records.
Declanşarea tipăririi se face cu OK.

26
În cazul tabelelor şi formularelor, pentru a folosi Page Setup, trebuie să deschidem întâi
obiectul.
Access 2007 – Modul A – Pagina 40

Cuprins
1. CONCEPTE GENERALE PRIVIND BAZELE DE DATE................................1
1.1. Noţiunea de SGBD..................................................................................................1
2. ORGANIZAREA UNEI BAZE DE DATE ACCESS 2007...............................2
3. PRIMII PAŞI ÎN LUCRUL CU BAZELE DE DATE.......................................2
3.1. Deschiderea şi închiderea unei aplicaţii de baze de date
(Microsoft Access 2007)......................................................................................................2
3.2. Crearea unei baze de date.......................................................................................2
3.3. Închiderea unei baze de date...................................................................................3
3.4. Deschiderea unei baze de date................................................................................3
4. UTILIZAREA FUNCŢIEI HELP.................................................................3
5. AFIŞAREA ŞI ASCUNDEREA BARELOR DE INSTRUMENTE
4
6. TABELE (ENTITĂŢI)................................................................................4
6.1. Tipuri de date în Microsoft Access 2007.................................................................5
6.2. Crearea unui tabel...................................................................................................6
6.3. Adăugarea, modificarea şi ştergerea înregistrărilor dintr-un
tabel 8
6.4. Modificarea structurii unui tabel............................................................................9
6.4.1. Crearea unei reguli de validare pentru un câmp......................................................................10
6.5. Ştergerea unui tabel din baza de date...................................................................11
7. MODIFICAREA ASPECTULUI UNEI FERESTRE CU DATE
11
7.1. Schimbarea dimensiunilor coloanelor şi liniilor...................................................12
7.2. Schimbarea ordinii de afişare a câmpurilor.........................................................12
7.3. Blocarea unui câmp pe ecran................................................................................12
7.4. Ascunderea şi reafişarea câmpurilor....................................................................13
7.5. Liniile de grilă şi culoarea de fond.......................................................................13
7.6. Modificarea parametrilor de font pentru câmpurile din fereastră
13
7.7. Sortarea înregistrărilor din tabel..........................................................................13
7.8. Căutarea unei valori într-un tabel........................................................................14
7.9. Filtre......................................................................................................................15
8. INDEXAREA UNUI TABEL......................................................................15
8.1. Crearea, modificarea şi ştergerea unui index cheie primară...............................16
8.2. Crearea, modificarea şi ştergerea unui index normal..........................................16
Access 2007 – Modul A – Pagina 41

9. RELAŢII ÎNTRE TABELELE DINTR-O BAZĂ DE DATE...........................17


9.1. Crearea, modificarea şi ştergerea unei relaţii între tabele...................................17
10. INTEROGĂRI..........................................................................................18
10.1. Crearea unei interogări.........................................................................................18
10.1.1. Specificarea câmpurilor care vor apărea în rezultatul interogării............................................19
10.1.2. Testarea interogării..................................................................................................................19
10.1.3. Ordonarea rezultatelor după unul sau mai multe criterii.........................................................20
10.1.4. Ascunderea/reafişarea unor câmpuri din rezultat....................................................................20
10.1.5. Specificarea înregistrărilor care vor apărea în rezultatul interogării.......................................20
10.1.6. Specificarea criteriilor pentru mai multe câmpuri...................................................................22
10.2. Salvarea interogării...............................................................................................23
10.3. Modificarea unei interogări..................................................................................23
10.3.1. Ştergerea unor câmpuri din interogare.....................................................................................23
10.3.2. Adăugarea unor câmpuri la o interogare..................................................................................23
10.4. Executarea unei interogări....................................................................................23
10.5. Ştergerea unei interogări......................................................................................23
11. FORMULARE.........................................................................................23
11.1. Crearea unui formular..........................................................................................23
11.2. Utilizarea unui formular........................................................................................24
11.3. Adăugarea şi modificarea textului din antetul sau subsolul
formularului.......................................................................................................................25
11.4. Introducerea unei imagini într-un formular..........................................................25
11.5. Modificarea unui formular....................................................................................26
11.6. Crearea unui formular prin care utilizatorul să aibă acces
numai la anumite înregistrări............................................................................................26
11.7. Ştergerea unui formular........................................................................................26
12. RAPOARTE............................................................................................26
12.1. Crearea unui raport..............................................................................................27
12.2. Modificarea unui raport........................................................................................29
12.3. Adăugarea şi modificarea textului din antetul sau subsolul
raportului...........................................................................................................................29
12.4. Introducerea unei imagini într-un raport..............................................................30
12.5. Gruparea înregistrărilor după anumite câmpuri..................................................30
12.6. Crearea unui raport în care să se afişeze numai anumite
înregistrări.........................................................................................................................30
12.7. Ştergerea unui raport............................................................................................31
13. TIPĂRIREA
CONŢINUTULUI PENTRU UN
TABEL/FORMULAR/REPORT/ O INTEROGARE ..................................................31
13.1.1. Previzualizarea conţinutului....................................................................................................31
Access 2007 – Modul A – Pagina 42

13.1.2. Tipărirea propriu-zisă..............................................................................................................32