Sunteți pe pagina 1din 13

LP 1 BAZE DE DATE MICROSOFT ACCESS.

NOŢIUNI GENERALE

Crearea unei noi baze de date

Comanda : New / Blank Database / Create

Baza de date este creată ca un container, care conţine iniţial un singur tabel, cu numele
generic Table1 – şi la care ulterior putem adăuga alte tabele, în funcţie de necesităţile pe care le
avem.

Interogări SQL în Microsoft Acces | 1


Un tabel într-o bază de date este asemănător ca structură cu un tabel în Excel şi conţine o
colecţie de informaţii împărţite în categorii precis caracterizate şi neredundante (care apar doar
o singură dată).
Pentru a se defini un tabel într-o bază de date trebuie parcurse două etape:

1. Definirea structurii tabelului:


Se realizează prin vizualizarea bazei de date în mod „proiectare”, prin folosirea
comenzii View / Design View:

Înseamnă caracterizarea categoriilor de informaţii pe care le va conţine tabelul respectiv


– numite în teoria bazelor de date CÂMPURI. Câmpurile unei baze de date sunt foarte
asemănătoare ca şi concept cu coloanele unui tabel în Excel; pentru a caracteriza un câmp într-
un tabel care aparţine unei baze de date trebuie indicate în mod obligatoriu următoarele
elemente referitoare la acesta:
▪ Numele câmpului: [nume, prenume]
persoane.[nume, prenume]

▪ Tipul de dată al câmpului: se alege dintr-o listă de tipuri de dată predefinite, în funcţie
de natura informaţiilor care vor fi memorate în câmpul respectiv.
Tip Descriere
Şiruri de caractere (litere şi cifre) cu o lungime maximă de 255
Text
caractere
Şiruri de caractere (litere şi cifre) cu o lungime maximă de 65536
Memo
caractere
Valoare numerică întreagă sau reală, în funcţie de proprietatea
Number
FieldSize
Dată calendaristică (zi, lună, an) şi moment de timp (oră, minut,
DateTime
secundă)
Valoare numerică care reprezintă o sumă de bani, folosită în
Currency
special în calcule financiare, unde nu sunt permise rotunjiri.
Valoare numerică autogenerată, unică pt. fiecare înregistrare din
AutoNumber
tabelă
Valoare logică (booleană) cu două posibilităţi: da, nu (adevărat,
Yes/No
fals)
Obiect generic inserat în baza de date (document Word, imagine,
OLE
film, etc.)
Hyperlink Adresă catre o pagină Web din Internet
Valoare autogenerată în urma efectuării unor calcule asupra
Calculated
valorilor din celelalte câmpuri ale tabelului
Lookup Valoare care se selectează dintr-o listă de valori posibile,
Wizard specificate manual sau preluate din alte tabele ale bazei de date
Tipul de dată optim pentru a stoca imagini digitale şi orice alt fel
Attachment
de fişiere binare.

Interogări SQL în Microsoft Acces | 2


2. Definirea conţinutului tabelului:
Se realizează prin vizualizarea bazei de date în mod „proiectare”, prin folosirea
comenzii View / Datasheet View:

Înseamnă introducerea efectivă a informaţiilor care vor fi stocate în tabelul respectiv –


numite în teoria bazelor de date ÎNREGISTRĂRI. Înregistrările într-o bază de date sunt foarte
asemănătoare cu liniile unui tabel în Excel şi conţin valori particulare pentru câmpurile
(coloanele) tabelului; ca şi principiu general, este bine ca într-un tabel înregistrările să nu se
repete şi să existe şi un mecanism de identificare a lor în mod unic pentru a nu se putea
confunda unele cu altele.

Exemplu:
Vom crea un tabel care să conţină informaţii generale despre pacienţii luaţi în evidenţa
unui spital. În structura acestui tabel dorim să introducem următoarele câmpuri:
▪ NUME, PRENUME ▪ CAS
▪ DATA NASTERII ▪ ANAMNEZĂ
▪ VARSTA ▪ INALTIME
▪ GEN ▪ GREUTATE
▪ DOMICILIU ▪ GLICEMIE
▪ JUDET ▪ COLESTEROL
▪ LOCALITATE

Descriem în continuare cum se poate defini fiecare câmp în parte:


1. Câmpul NUME, PRENUME: deoarece va conţine numele şi prenumele persoanelor
care urmează a fi luate în evidenţă, tipul de dată cel mai adecvat este tipul Text.
2. Câmpul DATA NASTERII: tipul de dată adecvat este DateTime.
3. Câmpul VARSTA: va fi de tip Number.
Pentru câmpurile numerice este util de particularizat două proprietăţi: “Field Size” şi
“Format”.
Proprietatea „Field Size” stabileşte tipul şi mărimea valorilor numerice care vor putea fi
introduse în câmpul respectiv, conform următorului tabel:

Byte Numere ÎNTREGI, între 0 şi 255


Integer Numere ÎNTREGI, între -32.768 şi 32.767
Long Integer Numere ÎNTREGI, între -2.147.483.648 şi 2.147.483.647
Decimal Numere REALE, între –10^28–1 şi 10^28–1, cu precizie de 28
zecimale
Single Numere REALE, între –3.402823 E38 şi –1.401298 E–45 (valori
negative) şi între 1.401298 E–45 şi 3.402823 E38 (valori pozitive),
cu precizie de 7 zecimale

Interogări SQL în Microsoft Acces | 3


Double Numere REALE, între –1.79769313486231 E308 şi
–4.94065645841247 E–324 (valori negative) şi între
4.94065645841247 E–324 şi 1.79769313486231 E308 (valori
pozitive), cu precizie de 15 zecimale

4. Câmpul GEN: Va avea doar două valori posibile, M (pentru masculin) şi F (pentru
feminin). Ca principiu de lucru în proiectarea bazelor de date, se urmăreşte în
general ca informaţia să fie introdusă în maniera cea mai concisă posibil, folosindu-
se prescurtări sau coduri numerice ori de câte ori este posibil – pentru a se micşora la
maximum timpul de introducere a datelor şi a se minimiza riscul de eroare.
Tot din aceleaşi considerente, deşi am fi tentaţi să definim acest câmp de tip Text,
eventual cu dimensiunea 1, un tip de dată încă mai adecvat ar fi „Lookup Wizard”,
care elimină complet riscul de eroare, deoarece nu permite utilizatorului decât să
selecteze una dintre cele două valori posibile stabilite în faza de proiectare a bazei de
date, respectiv M şi F.

Pentru definirea unui câmp al unei baze de date ca având tipul „Lookup Wizard” se
foloseşte un program asistent care necesită parcurgerea următorilor paşi:

PASUL 1. Se alege opţiunea „I will type in the values that I want”, care permite specificarea
explicită a valorilor pe care le va conţine lista predefinită (utilizarea celeilalte opţiuni presupune
culegerea acestor valori dintr-un alt tabel, cu nomenclatoare şi este necesară atunci când lista
valorilor posibile este mult mai amplă - de exemplu lista tuturor judeţelor din România sau a
tuturor localităţilor dintr-un judeţ).

PASUL 2. Se precizează manual valorile pe care le va conţine lista predefinită, într-o singură
coloană, pe linii succesive; dacă este nevoie, coloana se poate redimensiona prin ajustarea
lăţimii sale, şi se pot defini de asemenea şi coloane multiple, respectiv tabele de valori dacă este
nevoie.

PASUL 3. Se bifează opţiunea „Limit to List” dacă dorim ca numai valorile specificate la pasul 2
să fie admise în câmpul definit cu tipul „Lookup Wizard”; se finalizează operaţiunea prin
utilizarea butonului „Finish”.

Interogări SQL în Microsoft Acces | 4


PASUL 1.

PASUL 2.

PASUL 3.

Interogări SQL în Microsoft Acces | 5


5. Câmpurile DOMICILIU, JUDET: se pot defini tot de tip Text sau Lookup Wizard; la
DOMICILIU valorile posibile vor fi U (pentru mediul urban) şi R (pentru mediul
rural), iar la JUDET se va încărca lista tuturor judeţelor din România.
6. Câmpul LOCALITATE: este de tip Text, cu dimensiunea de 25 caractere (spaţiu
suficient pentru a scrie nume de localităţi din România).
7. Câmpul CAS: prin acest câmp dorim să bifăm pacienţii care beneficiază de asigurare
de sănătate; prin urmare, tipul de dată cel mai adecvat este Yes/No.
8. Câmpul ANAMNEZA: În acest câmp va fi descrisă anamneza bolii; deoarece este
necesar un spaţiu mai mare, pentru introducerea unor caracterizări potenţial
complexe, tipul de dată cel mai adecvat va fi Memo. Fiind vorba de un câmp de tip
text, cu lungime mare, nu este necesară specificarea altor proprietăţi suplimentare.
9. Câmpul INALTIME: Se va introduce înălţimea pacienţilor, exprimată în metri – prin
urmare, tipul de dată adecvat va fi Number, şi, pentru a putea lucra cu numere reale,
este obligatoriu să folosim un format adecvat – de exemplu, formatul „Single” în
proprietatea „Field Size” şi să precizăm numărul de cifre cu care dorim să exprimăm
partea zecimală a valorilor introduse, în proprietatea „Decimal Places” – de exemplu
2 cifre (vezi figura).

10. Câmpurile GREUTATE, GLICEMIE, COLESTEROL: se vor introduce valori


numerice, întregi, prin urmare tipul cel mai potrivit de dată este Number – cu
formatul “Long Integer” – pentru a putea introduce valori suficient de mari dacă este
cazul.

De multe ori, în cazul în care se lucrează cu valori numerice (dar şi cu valori de tip Text),
în ideea de a se controla rata erorilor care pot apare la încărcarea datelor în tabel se introduce în
descrierea câmpurilor o regulă de validare (prin personalizarea proprietăţii „Validation Rule”),
astfel încât să nu fie acceptate în câmpul respectiv decât valorile care satisfac acea regulă de

Interogări SQL în Microsoft Acces | 6


validare – în cazul în care regula nu este satisfăcută, fiind afişat un mesaj de atenţionare, stabilit
prin personalizarea proprietăţii „Validation Text”.
Astfel, convenim că greutatea unei persoane nu poate depăşi valoarea de 500 kg. Regula
de validare şi textul de validare vor fi definite conform figurii de mai jos:

După ce toate câmpurile tabelului au fost descrise corespunzător, se poate trece la etapa
a doua, respectiv introducerea de înregistrări în tabel, adică date efective. Pentru aceasta, este
suficientă schimbarea modului de vizualizare a tabelului, din Design View în Datasheet View;
structura tabelului va fi salvată automat, iar conţinutul său va fi afişat în modalitatea clasică, ce
permite introducerea de date:

În final, baza de date poate fi salvată cu un nume personalizat prin utilizarea comenzii
File / Save Database As, după care se introduce explicit numele sub care dorim să salvăm fişierul
şi localizarea acestuia pe hard-disc.

Interogări SQL în Microsoft Acces | 7


Sortarea înregistrărilor unui tabel
Sortarea are ca efect aranjarea înregistrărilor după un criteriu, respectiv în ordinea
impusă de valorile dintr-un câmp; în urma sortării în Access se modifică ordinea integrală a
înregistrărilor din tabel, şi nu numai ordinea valorilor din câmpul folosit. Sortarea se poate face
în ordine crescătoare sau descrescătoare astfel:
1. se selectează câmpul după care se va face sortarea (criteriu sau cheie a sortării),
2. se realizează sortarea în ordinea dorită, prin utilizarea butonului „Ascending” sau
„Descending” din meniul superior, secţiunea Home / Sort  Filter.

Rezultatul operaţiunii de sortare este afişat în figura de mai jos; atunci când tabelul este
sortat după valorile dintr-un câmp specific, numele coloanei corespunzătoare are în dreptul său
o săgeată, orientată în sus sau în jos, pentru a indica prezenţa unui criteriu de ordonare definit
pe tabelul de date.

Sortarea se poate realiza în ordine crescătoare sau descrescătoare; pentru a se elimina


ordinea creată şi a se reveni la forma iniţială în care au fost introduse înregistrările în baza de
date, se va putea utiliza butonul „Remove Sort”, din aceeaşi secţiune:

Interogări SQL în Microsoft Acces | 8


Filtrarea înregistrărilor
Filtrarea permite afişarea doar a înregistrărilor
care satisfac un criteriu (condiţie) de filtrare.
Selectând câmpul după care se doreşte filtrarea şi
apoi alegând butonul Filter din secţiunea Home / Sort 
Filter va fi afişat dialogul cu opţiunile de filtrare.
Filtrarea poate fi realizată în două modalităţi:
1. Direct, prin utilizarea listei de valori distincte
existente într-un câmp. Această listă este afişată în
fereastra de filtrare, fiind suficientă doar bifarea
valorilor pe care dorim să le păstrăm şi debifarea
celorlalte; în acest mod vor fi afişate din tabel doar
înregistrările care conţin în câmpul utilizat una
dintre valorile bifate.

2. Indirect, prin utilizarea unei reguli automate de filtrare. Aceste reguli se pot crea prin
folosirea opţiunilor Text Filters, Number Filters sau Date Filters din meniul de filtrare (pentru
un câmp dintr-un tabel, numai una dintre opţiunile anterioare este disponibilă, adică cea
corespunzătoare tipului de dată al câmpului). În continuare, trebuie ales un operator de
filtrare, de tipul: Equals (egal cu), Does Not Equal (diferit de), Less Than (mai mic decât),
Greater Than (mai mare decât), Between (în intervalul) - lista operatorilor disponibili diferă de
asemenea în funcţie de tipul de dată al câmpului selectat. Se introduce apoi valoarea de
filtrare, asupra căreia acţionează operatorul selectat, formându-se astfel practic regula de
filtrare dorită.

Definirea filtrelor pe câmpurile unui tabel se realizează cumulativ, adică la adăugarea


unui nou filtru cele definite anterior (dacă există) nu se şterg automat, ci noul filtru li se adaugă,
selectând din tabel înregistrările ce corespund simultan tuturor criteriilor de filtrare definite
până la un moment dat. Coloanele din tabel care au definite filtre sunt de asemenea evidenţiate
prin înscrierea unui simbol specific după numele lor, în zona de antet a tabelului.

Interogări SQL în Microsoft Acces | 9


Filtrele definite pe coloanele unui tabel pot fi eliminate în două modalităţi:
- Unul câte unul, prin folosirea comenzii „Clear Filter from…” din meniul personalizat al
coloanei;

- Toată odată, prin utilizarea butonului Toggle Filter din meniu-ul superior, secţiunea
Home / Sort  Filter.

Realizarea de calcule cu valorile dintr-un tabel:


Se foloseşte comanda Totals, , din secţiunea Home / Records , care adaugă
la finalul tabelului o linie de totaluri în care se pot calcula rezultatele următoarelor funcţii:
• Pentru câmpuri de tip Text, Memo sau Yes/No: Se calculează funcţia COUNT, adică
numărul înregistrărilor care au valori nevide în câmpul respectiv (de tip Text sau
Memo) sau care au controlul de tip CheckBox bifat (câmpuri de tip Yes/No);
• Pentru câmpuri de tip Number: Se calculează oricare dintre următoarele funcţii
disponibile:
▪ SUM (suma valorilor din câmpul respectiv),
▪ AVERAGE (valoarea medie),
▪ COUNT (numărul valorilor nevide),

Interogări SQL în Microsoft Acces | 10


▪ MAXIMUM (valoarea maximă),
▪ MINIMUM (valoarea minimă),
▪ STANDARD DEVIATION (deviaţia standard),
▪ VARIANCE (varianţa).
• Pentru câmpuri de tip Date/Time: Se calculează oricare dintre funcţiile COUNT,
AVERAGE, MINIMUM sau MAXIMUM.

Aceste calcule se realizează în mod implicit pentru toate înregistrările tabelului, dar dacă
definim filtre pe câmpurile sale, calculele vor fi reactualizate automat doar pentru înregistrările
care îndeplinesc criteriile de filtrare specificate. De asemenea, calculele se reactualizează şi la
modificarea conţinutului tabelului, prin adăugare sau ştergere de linii.

Alte operaţii referitoare la înregistrările unui tabel


(Secţiunile Records şi Find)

a) Adăugarea de înregistrări noi: În momentul în care se începe editarea conţinutului unei


înregistrări într-un tabel, după aceasta se adaugă automat o linie nouă, vidă, pe care
urmează a se introduce o nouă înregistrare. Comanda New din meniu-ul superior are

exact acelaşi efect, , cu singura deosebire că, în plus, cursorul se mută pe linia
nou-introdusă în tabel pentru a se începe editarea acesteia.
b) Ştergerea unei înregistrări: Se selectează înregistrarea (linia) din tabel pe care dorim să

o ştergem, după care se foloseşte comanda Delete, . În acest moment va apare


un mesaj de confirmare a ştergerii (vezi figura), prin care suntem avertizaţi că din
momentul în care efectuăm ştergerea datele nu vor mai putea fi recuperate, pentru a se
evita eventualele ştergeri accidentale.

Interogări SQL în Microsoft Acces | 11


c) Salvarea înregistrărilor: Se foloseşte dacă dorim în mod explicit să salvăm doar

conţinutul tabelului curent din baza de date, folosind comanda Save .


În mod normal, salvarea globală a fişierului care conţine întreaga bază de date, folosind

comanda generală de salvare, , presupune şi salvarea modificărilor


din tabelele bazei de date, fiind recomandată utilizarea sa ca înlocuitor al comenzii
specializate de salvare.
d) Poziţionarea pe o anumită înregistrare din tabel: Se realizează folosind comanda Go To,

, cu opţiunile:
• First: ne poziţionăm pe prima înregistrare din tabel
• Last: ne poziţionăm pe ultima înregistrare din tabel
• Previous: ne poziţionăm pe înregistrarea anterioară celei curente;
• Next: ne poziţionăm pe înregistrarea care o urmează pe cea curentă;
• New: se adaugă o nouă înregistrare, vidă, la finalul tabelului şi ne
poziţionăm pe ea.

e) Select all: Este o opţiune a comenzii Select , prin care se selectează întregul
conţinut al tabelului – echivalentă cu combinaţia de taste CTRL+A sau cu click pe
pătratul din colţul din stânga-sus al tabelului (similar cu comanda de selectare a unui
tabel în Excel) – vezi figura.

f) Căutarea unei valori specifice într-un tabel: Se realizează folosind comanda Find

, după care se precizează modul în care urmează a se realiza căutarea respectivă:


• În secţiunea „Find What”: se indică valoarea pe care dorim să o căutăm;
• În secţiunea „Look In”: se indică locul în care se va realiza căutarea – în câmpul
selectat al tabelului, „Current field”, sau în întregul tabel , „Current document”;
• În secţiunea „Match”: se indică modul în care se va realiza căutarea – se caută
potrivirile exacte ale valorilor din câmpuri cu valoarea căutată, „Whole Field”,
câmpurile care încep cu valoarea căutată, „Start of Field”, sau câmpurile care conţin
în interiorul lor valoarea căutată, „Any Part of Field”.

Interogări SQL în Microsoft Acces | 12


g) Înlocuirea unei valori specifice într-un tabel cu o valoare nouă: Se realizează folosind

comanda Replace, , indicând aceleaşi informaţii ca la comanda Fiind.

Interogări SQL în Microsoft Acces | 13

S-ar putea să vă placă și