Documente Academic
Documente Profesional
Documente Cultură
efectuarea de calcule;
actualizarea bazei de date (prin cereri de tip aciune): creare de noi tabele, adaugare de noi
inregistrari, stergere de inregistrari, actualizarea inregistrarilor
Tipuri de interogri
Interogri de selecie -permit extragerea de date din una sau mai multe tabele i/sau cereri (SELECT
Query) precum i efectuarea de calcule ;
Interogri de tip analiz ncruciat (Crosstab Query) - permit sintetizarea datelor i a rezultatelor
obinute din calcule,matriceal, sub forma unei foi de calcul tabelar;
Interogri tip aciune - cu funcia de creare de noi tabele i de actualizare a bazei de date:MAKETABLE Query;DELETE QUERY;Append Query; Update Query
Interogarea de selecie
Pentru cererea de selecie se alege tab CREATE->grupul Other-> Query Design din bara
de meniuri
Caseta Show Table ofer posibilitatea precizrii sursei de date pentru construirea cererii
Fereastra Query
Sursa de date pentru o cerere (Query) poate fi reprezentat de:
una sau mai multe tabele;
una sau mai multe interogri;
tabele i interogri.
Se vor selecta tabela/tabelele i/sau cererile surs i se va aciona butonul Add pentru a realiza aducerea
acestora n fereastra de proiectare a cererii.
Cererea de selecie
Query Design este structurat astfel:
Linia Field: rezervat pentru definirea numelui atributului selectat;
Linia Table: destinat precizrii sursei de date;
Linia Sort: permite precizarea sensului sortrii pentru atributul din coloana respectiv;
Linia Show: permite inhibarea afirii realizrilor cmpului respectiv;
Linia Criteria: pentru precizarea criteriilor de selecie, prin introducerea expresiilor Access corespunztoare;
Liniile Or: permite precizarea mai multor criterii de selecie n cazul expresiilor Access utiliznd operatorul OR.
Cererile de selecie cu surs mai multe tabele utilizeaz implicit operaia de echicompunere, fapt ce
conduce la selectarea nregistrrilor ce au corespondent n ambele tabele (interogri de tip Inner
Join).
Ex. O cerere asupra tabelelor Produse i Continut
Comanda, fr a se specifica vreun criteriu, va
conduce la afisarea n lista rezultatelor doar a
produselor pentru care s-a efectuat cel puin o
comand. Dac se dorete realizarea unei
interogri de tip Outer Join (folosind operaia de
compunere extern) se va efectua dublu click
asupra liniei de legtur dintre tabele i, n caseta
Join Properties se poate preciza selectarea tuturor
nregistrrilor din una dintre tabele, indiferent
dac au sau nu corespondent n cealalt tabel.
Exemplu de echicompunere
Executarea interogrii
Pentru realizarea operaiei de compunere pe baza unei relaii de inegalitate (<, >, <>) a
cmpurilor de legtur dintre tabele se poate folosi limbajul SQL. O cerere ce are ca
surs dou tabele ntre care nu exist nici o relaie va avea ca rezultat produsul cartezian
al nregistrrilor din cele dou tabele.
Expresii Access
O expresie const ntr-un numr de elemente posibile care pot fi
utilizate individual sau n combinaii pentru a produce un rezultat.
Aceste elemente includ:
Identificatori (numele cmpurilor, a controalelor din formulare sau
rapoarte, a proprietilor acelor cmpuri sau controale)
Operatori;
Funcii;
Constante valori care nu se schimb cum ar fi un ir text sau
numere care nu sunt calculate printr-o expresie.
O expresie poate fi utilizat pentru a efectua calcule, pentru a regsi
valoarea unui cmp, a furniza criterii pentru o interogare sau pentru a
crea cmpuri calculate.
Campuri calculate
Sunt cmpuri care returneaz, la executarea interogrii, valoarea expresiilor Access asociate.
Creare: Se tasteaz numele campului calculat ntr-o nou coloan din grila Query Design,
i apoi se completeaz expresia .
Valoare:[cantitate]*[pret]
Se pot folosi operatori:
aritmetici: +, - , * , / , Mod (returneaz restul mpririi la un ntreg), ^ (ridicare la
putere).
de atribuire i comparare: =, <, >, <=, >=, < >.
logici: And, Or, Not. Se pot utiliza pentru construirea expresiilor Access compuse.
de concatenare a irurilor de caractere: +, &.
de identificare: ! i . (punct).
ali operatori specifici Access: LIKE, IN, BETWEEN.
10
Functii Access
Avg(CmpNum) - calculeaz media aritmetic a valorilor de pe campul
argument
Sum(CmpNum) - calculeaz suma valorilor de pe campul argument
Max(CmpNum) - calculeaz valoarea maxim a valorilor de pe campul
argument
Min(CmpNum) - calculeaz valoarea minim a valorilor de pe campul
argument
Var(CmpNum) - calculeaz variaia (dispersia) valorilor de pe campul
argument
Count(Camp) - calculeaz numrul valorilor nenule.
Left(CmpText,n) - extrage primele n caractere (din stnga).
Right(CampText,n) - extrage ultimele n caractere (din dreapta).
Len(CmpTexi) - calculeaz lungimea expresiei.
Mid(CampText;n{;m}) - extrage primele m caractere, ncepnd cu al n-lea. n
cazul cnd m lipsete - extrage toate caracterele, ncepnd cu al n-lea.
Date() - returneaz data curent.
Now() - returneaz data i ora curente.
11
"q" - trimestre;
ex.: DateAdd("q";7;Date()) - peste 7 trimestre din ziua curent.
"m" - luni;
ex.: DateAdd("m ";-9;Date()) - cu 9 luni n urm fa de ziua curent.
"d" - zile;
ex.: DateAdd("d";25;[DataImpr]) - peste 25 de zile de la data DataImpr data
mprumutului.
"yyyy" - ani;
ex.: DateAdd("yyyy";-4;Date()) - cu 4 ani n urm de la data curent.
"ww" - sptmni;
ex.: DateAdd("ww";2;[DataRestit]) - peste 2 sptmni de la DataRestit -data
restituirii
"h" - ore;
ex.: DateAdd("h"; -27;Now()) - cu 27 de ore n urm.
12
Funcia DateDiff
Returneaz un numar intreg care specific numrul de intervale de
timp dintre dou date specificate.
Sintaxa
DateDiff(interval, dat1, dat2)
Are aceleasi valori pentru interval ca si DateAdd
Exemplu: DATEDIFF("yyyy" , #1/1/2005# , #2/2/2007#) returneaza 2
ani diferenta
Functia Month()-extrage luna dintr-un camp Date
Functia Year()-extrage anul dintr-un camp Date
Functia Datepart-extrage o anumita parte dintr-un camp Date
Sintaxa:
Datepart(interval;[campDate])
13
Parametrizarea interogrilor
n grila de proiectare, pe coloana dorit (ex. Nrcomanda), n linia Criteria, se va preciza ntre
paranteze drepte un mesaj ce urmeaz a fi afiat la executarea cererii permind ca utilizatorul s
introduc criteriul de selecie dorit (de ex. [Tastati nr. comanda: ]).
Parametrii pot fi utilizai nu doar n rndul de criterii, ci i n formulele cmpurilor calculate, dac se
dorete introducerea unui termen variabil n expresii.
14
Interogri de sintetizare
Access permite utilizatorilor realizarea unor cereri prin intermediul crora se pot aplica funcii
agregate unor nregistrri grupate dup criterii prestabilite. Prin intermediul acestor query cu rol
de sintetizare a datelor se pot construi cu uurin cereri care s returneze totalul, media, minimul
sau maximul unor grupuri de tupluri.
Pentru a realiza o cerere de sintetizare a datelor se va elabora interogarea de selecie aducndu-se n
grila Query Design cmpurile necesare i adugndu-se eventualele cmpuri calculate, dup care
se va apsa butonul Totals din bara de instrumente. Ca rezultat al acestei operaii, n grila Query
Design, va fi disponibil un nou rnd intitulat Total.
n cazul n care mai multe coloane au selectat n linia Total opiunea Group By, gruparea se va face
nti dup primul cmp din stnga, apoi dup al doilea, .a.m.d
15
16
17
18
19
20
21
22
23
24
Etapele de creare a unei interogri tip aciune sunt similare celor prezentate n cazul interogrilor de
selecie, presupunnd ca etap suplimentar specificarea explicit prin intermediul grupului
Query Type a tipului de cerere dorit.
25
26
27
28
29
30
31
32
33