Sunteți pe pagina 1din 6

Lucrarea de laborator nr.

4
Tema : Proiectarea interogrilor
Scopul lucrrii:
s cunoasc i s poat folosi tehnologiile de creare a interogrilor;
s cunoasc i s poat utiliza tipurile de asocieri dintre tabele;
s poat utiliza cmpuri calculate n interogri;
s poat crea interogri cu parametru.
Noiuni teoretice
I. Proiectarea unei interogri simple.
Interogarea este un obiect folosit pentru afiarea i actualizarea informaiilor stocate ntro baz de date. La afiare se specific ordinea de afiare a cmpurilor i a nregistrrilor i
condiia de afiare a datelor.
Access ofer utilizatorilor posibilitatea crerii urmtoarelor tipuri de interogri:
- interogri de selecie care permit extragerea datelor din unul sau mai multe tabele
i/sau interogri i prezentarea acestora n forma unui tabel;
- interogri de analiz ncruciat care permit extragerea datelor din unul sau mai
multe tabele i/sau interogri i prezentarea acestora n forma unui tabel ncruciat;
- interogri de aciune care permit crearea tabelelor noi i actualizarea datelor.
Obiectul interogare poate fi creat prin interfaa grafic:
Pasul 1. n fereastra Database, n lista Objects, se activeaz eticheta Query.
Pasul 2. Se activeaz comanda Query din meniul Insert.
Pasul 3. n fereastra New Query se activeaz varianta Design View.
-

Design View prin proiectarea interogrii;


Simple Query Wizard utiliznd asistentul pentru interogri
simple;
Crosstab Query Wizard utiliznd asistentul pentru interogri
ncruciate;
Find Duplicates Query Wizard utiliznd asistentul pentru
cutarea nregistrrilor duplicate;
Find Unmatched Query Wizard utiliznd asistentul pentru
cutarea nregistrrilor care nu au coresponden n dou tabele.

Fig. 1. Caseta New Query


Pasul 4. n fereastra Show Table se alege sursa interogrii ce va aprea n fereastra Select
Query i apoi se nchide. (figura 2)
Nota: Sursa de date pentru o interogare
poate fi reprezentat de:
Tables unu sau mai multe tabele;
Queries una sau mai multe interogri;
Both tabele i interogri.

Fig. 2. Fereastra Show Table


Ca rezultat apare fereastra din figura 3, prin intermediul creia se descrie structura
interogrii.
1

Seciunea I n care este


prezentat sursa interogrii

Seciunea II n care este


prezentat grila interogrii

Fig. 3. Fereastra Query n Design View


OBSERVAIE:

n procesul de proiectare a interogrii, unele tabele (interogri) pot fi excluse sau incluse n sursa
interogrii:
pentru a exclude se utilizeaz comanda Query/ Remove Tables;
pentru a include se utilizeaz comanda Query/Show Tables.

Pasul 5. Se completeaz grila interogrii. (figura 4)


Numele
cmpului

Afiarea
coninutului cmpului

Numele
tabelului

Criteriu
sortare

de

Criteriu
selecie

de

Fig. 4. Grila interogrii


Field conine cmpurile, ce se vor afia la ecran,
Remarc: Dac se dorete utilizarea tuturor cmpurilor dintr-un tabel, se poate utiliza
semnul * n linia Field a grilei.

Table indic surs cmpului din Field,


Total se folosete pentru sinteza datelor,
Sort precizeaz criteriile de sortare a datelor,
Remarc: Opiuni disponibile pentru rndul Sort: Ascending (ordine cresctoare sau
alfabetic) sau Descending (ordine descresctoare) i not sorted. Sortarea nu este
obligatorie. Dac n cteva coloane va fi instalat valoarea pentru Sort, atunci prioritile
sortrii vor crete de la stnga la dreapta.

Show precizeaz afiarea cmpului n rezultat,


Criteria determin condiia de afiare,
Or determin o alt condiie de afiare.
Pasul 6. Se modific proprietile interogrii, prin opiunea Properties a meniului View.
Pasul 7. Se salveaz interogarea, prin opiunea Save din meniul File. n caseta de dialog care
apare se va specifica numele interogrii.
Pasul 8. Se execut interogarea, prin opiunea Run din meniul Query.

nsrcinrile practice:
1. Proiectai o interogare de selecie care ar afia toate datele despre automobile.
2. S se afieze toate datele despre clieni.
3. Proiectai o interogare de selecie care ar afia modelul, culoarea, anul producerii
i preul de uzin.
4. S se afieze numele, prenumele i telefonul clienilor.
5. Proiectai o interogare de selecie care ar afia modelele automobilelor n ordinea
alfabetic.
6. S se afieze modelele automobilelor ordonate dup culoare n ordinea alfabetic.
7. S se afieze numele, prenumele clienilor n ordinea alfabetic.
8. S se afieze modelele automobilelor n ordinea descresctoare dup preul de
uzin.
9. S se afieze cel mai scump model propus de firm clienilor i caracteristicile lui.
10. S se afieze cele mai vechi modele.
II. Proiectarea asocierilor
Pentru proiectarea unor interogri bazate pe mai multe tabele, se recomand ca acestea s
fie legate prin intermediul asocierilor. Asocierea reprezint o relaie ntre dou tabele ce se
specific prin caseta Join Properties, care se deschide prin comanda View/Join Properties.
(figura 5)

Fig. 5. Caseta Join Properties


Access permite utilizarea urmtoarelor tipuri de asocieri:
compunere intern permite extragerea nregistrrilor din ambele tabele care
au valori corespunztoare a cmpurilor,
compunere extern de stnga (left outer join) permite extragerea tuturor
nregistrrilor din tabelul principal (stnga) i nregistrrile din tabelul secundar
(dreapta) care au valori corespunztoare a cmpurilor.
compunere extern de dreapta (rigth outer join) permite extragerea tuturor
nregistrrilor din tabelul principal (dreapta) i nregistrrile din tabelul secundar
(stnga) care au valori corespunztoare a cmpurilor.
nsrcinrile practice:
11. Proiectai o interogare de selecie care ar afia modelele comandate, precum i
data tranzaciei, data livrrii, preui de uzin.
12. Proiectai o interogare de selecie, care ar afia clienii i modelele comandate de
ei, precum i data comenzii, data livrrii.
13. S se afieze numele, prenumele clienilor care au comandat.
14. Proiectai o interogare, care ar afia modelele nesolicitate de cumprtori.
15.

III.Criterii i cmpuri calculabile


Interogrile de selecie pot cuprinde i cmpuri calculate. Cmpurile calculate sunt
coloanele din interogri valorile cruia nu sunt luate direct din tabele, ci sunt obinute pe baza
unor expresii. Aceste cmpuri returneaz, la executarea interogrii, valoarea expresiilor Access
asociate lor. Drept operanzi ai acestor expresii pot servi cmpurile reale ale tabelelor.
Pentru a defini un cmp calculat ntr-o interogare se execut urmtorii pai:
Pasul 1. n rndul Field de pe gril de proiectare se alege o coloan liber.
Pasul 2. Se tasteaz denumirea cmpului calculat urmat de semnul ":", apoi se introduce
expresia conform creia se vor calcula valorile.
Remarc: Cmpurile reale din tabel ce vor servi drept operanzi se vor ncadra n paranteze
ptrate [ i ]

De exemplu, n tabelul "Modele" exist cmpurile "Preul fixat de uzin", "Cheltuielile de


transport", Pregtirea vnzare, dac preul minim de vnzare ar fi suma acestor trei cmpuri:
Exemplu:
Preul de vnzare: [Preul fixat de uzin] + [Cheltuielile de transport]
Numele clientului: [Nume] & " " & [Prenume]
Expresia poate fi tastat n rndul Field al unei coloane sau poate fi construit cu ajutorul
generatorului de expresii. Exemplul din figura 6 prezint utilizarea generatorului de expresii
pentru a concatena Numele clientului.
Pentru activarea ferestrei
generatorului de expresii
se execut click pe
butonul Build.

Fig. 6. Fereastra Expression Builder

Criteriile de selecie sunt nite expresii logice definite peste valorile cmpurilor unui tabel
sau ale unei interogri. Expresia logic se creeaz n rndul Criteria de pe grila ferestrei Design
Query.
De exemplu, dac n coloana "Preul de uzin" a cererii va fi nserat condiia ">1000 ",
atunci vor fi afiate numai nregistrrile care conin n coloana "Preul de uzin" valori mai mari
ca 1000.
n rndul Criteria pot fi inserate cteva expresii logice (n coloane diferite ). n acest caz
nregistrrile vor fi selectate prin calcularea conjunciei logice (operaia AND) a tuturor
expresiilor logice din coloanele cereri. Dac mcar o expresie va fi fals pentru toate valorile
cmpului, n care este inserat criteriul, atunci cererea va fi vid (nu va conine nregistrri).
De exemplu, n coloana "Preul de vnzare" este inserat ">1000", iar n coloana "Data
tranzaciei" - "<=Date()-10". Cererea rezultant va afia nregistrrile pentru care n cmpurile
respective valorile vor satisface criteriile inserate n rndul Criteria n mod simultan.
Rndul or de pe gril permite definirea a unui subcriteriu (nc o expresie logic) legat
de primul (din rndul Criteria) cu ajutorul operaiei OR.
De exemplu, n coloana "Preul de uzin" din rndul Criteria e inserat expresia ">1000",
iar n aceiai coloan n or este inserat expresia "= 1000 ". Rezultatul va fi echivalent afirii
nregistrrilor, care ar avea n coloana "Preul de vnzare" valori mai mare sau egale cu 1000.
4

Operaiile de comparare sunt urmtoarele:


> - mai mare;
< - mai mic;
>= - mai mare sau egal;
<= - mai mic sau egal;
= - egal, exact;
< > - diferit;
Like - compar cu un nume scris cu "*" (nlocuire), de exemplu, ''A*" denot toate
valorile care ncep cu A i formeaz iruri textuale;
Between - apartenena la un interval de valori, de exemplu, Between 1000 And 1500;
IN - precizeaz mulimea de valori admise pentru un atribut. de exemplu IN (2, 4),
Remarc: Dac expresia ce definete valorile cmpului calculat conine un operand ce nu
este constant i nici cmp real, atunci Access 2000 l interpreteaz ca parametru i afieaz
o fereastr care va recupera valoarea.

IV. Parametrizarea interogrii


Interogrile de selecie returneaz ntotdeauna tuplurile din tabelele surs care corespund
unei anumite cereri fixe. Adesea apare necesitatea selectrii informaiei cu ajutorul interogrilor
utiliznd criterii care i modific frecvent valoarea, atunci ea se poate transforma ntr-o
interogare parametric. Acestea permit introducerea unor criterii cu ajutorul casetei de dialog
Enter Parameter Value. n acest mod, utilizatorul este atenionat pentru fiecare parametru
necesar. Parametri pot fi utilizai nu doar n rndul de criterii, ci i n formulele calculate, dac se
dorete introducerea unui termen variabil n expresii.
Pentru a crea o interogare parametrizat se execut urmtorii pai:
Pasul 1. Interogarea se deschide n modul Design.
Pasul 2. n grila de proiectare, pe coloana dorit, n rndul Criteria, se va preciza ntre
paranteze drepte un mesaj ce urmeaz a fi afiat la executarea interogrii.

Fig. 12. Interogare cu parametri

Pasul 3. La executarea interogrii va apare cutia de dialog Enter Parameter Value, avnd
eticheta ce a fost atribuit anterior ca valoare a criteriului. Se introduce un model de
automobil n cutia de dialog.
Pasul 4. Pentru a rula interogarea se execut OK. (fig. 12)
nsrcinrile practice:
16. Proiectai o interogare de selecie care ar afia modelele i preul de uzin mai
scumpe dect 20 000.
17. S se afieze toate modelele, ce au capitonarea din piele.
18. S se afieze numele, prenumele clienilor la care numele ncepe cu S.
19. S se afieze toate modelele, ce au fost livrate.
20. S se afieze toate modelele, ce nu au fost livrate.
21. Proiectai o interogare, care ar afia modelele nesolicitate de clieni.
22. S se afieze toate modelele, ce au fost comandate n anul curent.
5

23. S se afieze toate modelele, ce au fost comandate n trimestrul III din anul
curent.
24. S se afieze toate modelele, ce au capitonarea din piele i preul de uzin mai
scumpe dect 20 000.
25. S se afieze toate modelele, ce au capitonarea din piele sau stof.
26. S se afieze toate modelele, ce au numrul de ui cu 2 i 3.
27. S se afieze toate modelele, ce au capitonarea din piele i preul de uzin mai
scumpe dect 20 000, iar cele catifea de orice pre.
28. De afiat numele complet al clienilor i adresa.
29. S se calculeze preul de vnzare a automobilelor, indicat n euro.
30. S se calculeze preul de vnzare a automobilelor echivalent la cursul valutar n lei
31. De afiat toate datele automobilelor indicnd parametru model.
32. De afiat modelul, preul automobilelor indicnd parametru culoare.
33. De afiat comenzile clienilor indicnd parametru nume i prenume.
34. De afiat comenzile clienilor indicnd parametru data tranzaciilor.
ntrebri de control:
Cum poate fi modificat o interogare?
2. Cum se formeaz un cmp calculat?
3. Descriei avantajele i dezavantajele cererilor cu parametri.
1.

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