Documente Academic
Documente Profesional
Documente Cultură
.
După alegerea modului de creare, se trece la selectarea tabelelor sursă din care se vor
extrage datele. Caseta Show Table, din figura de mai jos oferă posibilitatea precizării sursei de
date pentru construirea cererii.
Sursa de date pentru o cerere (Query) poate fi reprezentată de:
- una sau mai multe tabele;
- una sau mai multe interogări;
- tabele şi interogări.
Se vor selecta tabela/tabelele şi/sau cererile sursă şi se va acţiona butonul Add pentru a
realiza aducerea acestora în fereastra de proiectare a cererii. După a fost precizată sursa de date
se va închide fereastra Show Table prin acţionarea butonului Close. La nevoie se poate
redeschide fereastra folosind butonul Show Table din bara de instrumente sau opţiunea Show
Table din meniul Query.
După selectarea tabelelor fereastra principală Access va fi:
Sursa de
Date
Grila Query
Design
Fereastra Select Query (de mai sus ) este împărţită în două zone:
a. Zona superioară, în care se vizualizează tabelele/interogările sursă de date precum şi
relaţiile definite între acestea;
b. Grila Query Design structurată astfel:
• Linia Field: rezervată pentru definirea numelui atributului selectat;
• Linia Table: destinată precizării sursei de date;
• Linia Sort: permite precizarea sensului sortării pentru atributul din coloana respectivă;
• Linia Show: permite inhibarea afişării realizărilor câmpului respectiv;
• Linia Criteria: oferă posibilitatea precizării criteriilor de selecţie prin introducerea
expresiilor Access corespunzătoare;
• Liniile Or: permit precizarea mai multor criterii de selecţie în cazul expresiilor Access
utilizând operatorul OR.
2. Precizarea câmpurilor (atributelor) ale căror realizări urmează să le returneze cererea. Numele
acestor atribute se vor preciza în grila Query Design în rândul Field utilizând una din
următoarele modalităţi:
• Selectarea atributului din cadrul listei Field Name ce poate fi deschisă prin acţionarea
cu mouse-ul a butonului List Box ;
• Executarea unui dublu clic de mouse asupra atributului dorit din tabela/interogarea
aflată în panoul superior;
• Metoda drag-and-drop care presupune selectarea cu mouse-ul a atributului dorit din
panoul superior şi tractarea acestuia în linia Field.
Dacă este necesar să fie aduse în panoul inferior toate atributele aparţinând unei tabele se va
proceda în unul din următoarele moduri:
• Selectarea tuturor atributelor din tabela sursă (aflată în panoul superior) printr-un
dublu clic de mouse pe numele tabelei şi glisarea atributelor în grila Design (panoul
inferior);
• Utilizarea asteriscului aparţinând tabelei sursă: trageţi cu mouse-ul asteriscul în prima
coloană Field. Chiar dacă în grila de proiectare este completată doar prima coloană Field
la execuţie interogarea va returna realizările tuturor atributelor;
utilizând butonul Properties din bara de instrumente sau executând dublu click într-o zonă
liberă a panoului superior, în linia Output All Fields se va preciza Yes (figura de mai sus ) .
Precizarea valorii Yes pentru proprietatea Output All Fields nu va determina aducerea în
grila de proiectare a câmpurilor din tabela sursă, dar, în momentul executării cererii, DynaSet-u\
va cuprinde realizările tuturor atributelor.
În mod implicit în DynaSet, antetul coloanelor este reprezentat de numele atributului, cu
excepţia cazului în care la crearea tabelei aţi precizat o altă etichetă prin intermediul proprietăţii
Caption. Dacă doriţi afişarea în DynaSet a unei noi etichete pentru un atribut plasaţi mouse-ul în
linia Field înaintea numelui atributului, tastaţi eticheta dorită urmată de caracterul ":".
:
Se va pune în execuţie astfel Expression Builder:
4. Se precizează, dacă este necesar, câmpul/câmpurile după care se doreşte o eventuală
sortare şi sensul acesteia în linia Sort.
Expresiile Access utilizând operatorul Like permit specificarea unor criterii de selecţie prin
căutarea unui şir într-un text. în interiorul textului se pot folosi caracterele generice ? (poate
înlocui orice caracter în poziţia în care apare) şi * (orice în poziţia în care apare şi în
următoarele).
Astfel expresia Like "Tom*" selectează toate numele care conţin pe primele trei poziţii
caracterele "Tom", iar expresia Like u*escu" va permite selecţia numelor terminate în "eseu".
Operatorul In precizează mulţimea de valori admise pentru un atribut. Interogarea din Figura 4.
22 va selecta clienţii de tip SRL (a căror denumire se termină cu aceste trei caractere) ce au
comandat produsele "cablu telefonic" sau "banda izolanta".
Fig 4.24
Constantele utilizate în construirea expresiilor Access pot fi de natură:
• numerică (ex:1200,5,0) ;
• text (ex:"123", "TOMA ION", ”str. Viilor 15”);
• Dată calendaristică (ex: #12.31.01# ceea ce indică data de 31 decembrie 2001).
Identificatorii sunt nume de obiecte Access (tabele, atribute, formulare,etc) ca de exemplu
Acest text va fi afişat în caseta de dialog Enter Parameter Value în momentul în care se
pune în execuţie interogarea, iar utilizatorul poate introduce criteriul de selecţie în mod dinamic,
la execuţie.
Pentru a crea o interogare se selectează câmpurile dorite din unul sau mai multe tabele,
apoi se specifică unul dintre câmpuri ca fiind de tipul „Column Heading”, unul sau mai multe
câmpuri, de tipul „Row Heading” şi unul de tip „value”.
Câmpul de tip „value” va apare la intersecţia unei linii cu o coloană; pentru acest câmp se
specifică o funcţie agregat ca de exemplu Sum, Count, etc din linia Total. Celelalte câmpuri, care
apar în tabelul sintetic vor avea clauza „Where” în linia Total şi vor fi folosite la specificarea
unor criterii din interogare.
Noul tabel va prelua din tabelele existente toate câmpurile selectate în linia Field din
tabelele existente, eventual cu specificarea unui criteriu.
Traducerea SQL va fi:
SELECT studenti.marca, profile.cod_prof, special.cod_spec, ani.an, PLANE.cod_disc
INTO [note]
FROM ani INNER JOIN (((profile INNER JOIN PLANE ON profile.cod_prof =
PLANE.cod_prof) INNER JOIN special ON (special.cod_spec = PLANE.cod_spec) AND
(profile.cod_prof = special.cod_prof)) INNER JOIN studenti ON (special.cod_spec =
studenti.cod_spec) AND (profile.cod_prof = studenti.cod_prof)) ON (ani.an = studenti.an_s)
AND (ani.an = PLANE.as);
1. Se deschide baza de date dorită (de ex. Studenţi), apoi o interogare în Design View
2. Se închide Show Table fără a selecta un tabel.
3. Se deschide SQL View.
4. Se scrie instrucţiunea (SELECT de ex.)
unde câmpul folosit ca parametru într-o funcţie agregat trebuie să fie numeric.
Ex:
SELECT Avg(nota_fin) AS media, cod_disc FROM [note]
WHERE cod_spec="CE" AND an="1" GROUP BY cod_disc
ORDER BY Avg(nota_fin) DESC;
Se obţine ca rezultat media pe discipline a unei specializări (CE).
Se utilizează structura JOIN ON care specifică tabelul care trebuie unit şi relaţia dintre
câmpuri.
Sintaxa:
SELECT [ALL|DISTINCT|DISTINCTROW]
From nume_tabel {INNER|LEFT|RIGHT} JOIN tabel_legatura
ON criteriu_legatura
[ nume_tabel {INNER|LEFT|RIGHT} JOIN tabel_legatura
ON criteriu_legatura ]
[WHERE conditie]
[ORDER BY criteriu]
SELECT DENUMIREG, NUME, PRENUME
FROM GRUPE INNER JOIN STUDENTI
ON GRUPE.CODGRUPA=STUDENTI.CODG
SELECT lista_câmpuri
INTO tabel_nou
FROM tabel {INNER|LEFT|RIGHT} JOIN tabel_legatura
ON criteriu_legatura
[ nume_tabel {INNER|LEFT|RIGHT} JOIN tabel_legatura
ON criteriu_legatura ]
[WHERE conditie]