Documente Academic
Documente Profesional
Documente Cultură
Problema 1. Să se afişeze toate informaţiile despre produse (sub forma unei interogări). Să se
afișeze toate informațiile despre parteneri (sub forma unei interogări).
4. În lista Table/Queries este deja selectată tabela Produse, datorită selectării ei încă de la
început. Astfel, acum nu mai trebuie să facem această alegere. Acţionăm butonul
pentru a trece toate atributele din lista Available Fields în Selected Fields. Pentru mutare
unul câte unul, selectăm câmpul şi utilizăm butonul cu săgeată simplă, iar pentru a renunţa
la o selecţie folosim butoanele cu săgeţi orientate invers, spre stânga. Acţionăm apoi
butonul Next;
1
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
2
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Se observă că în panoul de navigare din stânga apare categoria Queries cu un element ce poartă
numele pe care l-am dat interogării, precedat de o pictogramă specifică interogărilor de selecţie .
În cadrul suprafeţei de lucru a ferestrei Access se afişează rezultatul. Afişarea datelor se realizează
în modul Datasheet View, selectabil din fila HOME – View, sau din colţul dreapta-jos al ferestrei
Access.
Celelalte două modalităţi de vizualizare sunt SQL View şi Design View. Conform acestora, pentru
prima avem următoarea imagine:
3
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
În cazul partenerilor se poate proceda similar, doar că alegeam tabela Parteneri, şi nu Produse.
Dar, vom indica o altă modalitate de rezolvare, tot cu instrumente vizuale, însă fără asistenţă
pas cu pas: – Create – Query Design. Selectăm Parteneri din fereastra Show Table – Add.
4
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
În
partea dreaptă avem codul SQL. Pentru salvarea interogării acţionăm opţiunea Save , sau la
închiderea ferestrei constructorului de interogări vom fi solicitaţi să denumim interogarea
(„Informatii detaliate Parteneri”), sau să renunţăm la această operaţiune.
5
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
4. Se rulează interogarea (RUN sau ! din bara de meniu principala), apoi se salvează cu
numele Produse si unitate masura.
Problema 3.Să se afişeze produsele, marca şi unitatea de măsură, la produs apărând în capul de
tabel „Unitate de masura”, în loc de „UM”.
6
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
7
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
2. Deschidem noua interogare mai întâi în Datasheet View (din meniul contextual alegem Open,
sau dăm dubluclic), pentru a vedea
cum se
reflectă la nivelul datelor faptul că avem produse exprimate în bucăţi. Se observă că acestea
conţin textul „buc” în coloana cu unitatea de măsură. Comutăm în modul de proiectare:
HOME – View – Design View;
3. Pentru specificarea condiţiei, în linia a cincea (Criteria), coloana a treia, tastăm „buc”. Fiind
vorba de text, Access va pune automat ghilimele.
6. Se salvează modificările.
8
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
5. Salvăm modificările.
De reţinut (pe baza vizualizării din SQL View):
Pentru specificare unui criteriu de ordonare, se foloseşte clauza ORDER BY, cu opţiunea ASC
(opţională) pentru ordonare crescătoare, respectiv DESC pentru descrescătoare.
9
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Problema 6. La fel ca la problema anterioară dar un produs să apară afişat o singură dată.
Rezolvare:
Se observă în urma ordonării alfabetice că un produs apare afişat de mai multe ori, fiind o informaţie
duplicată la afişarea unei singure coloane, chiar dacă produsele nu sunt identice, fiind de mărci
diferite. Aşadar, modificăm interogarea Lista produse, dar o redenumim înainte ca Lista generica
produse.
1. Verificăm să fie închisă interogarea Lista produse, apoi după selectarea ei acţionăm fie F2, fie
alegem opţiunea Rename din meniul contextual. Înlocuim numele existent cu Lista generica
produse. Deschidem interogarea în Design View;
2. Deschidem fereastra de proprietăţi pentru interogare: fila DESIGN – opţiunea
.
În panoul de sus dăm un clic pe o zonă în care nu se află sursa de date, undeva unde nu scrie
NIMIC. Ne asigurăm că în fereastra de proprietăţi, la rubrica Selection type apare „Query
Properties”. Căutăm proprietatea Unique Values, căreia îi asociem valoarea Yes din cadrul
listei derulante.
3. Se ruleaza interogarea
10
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
6. Salvăm.
De reţinut (pe baza vizualizării din SQL View):
Pentru eliminarea liniilor duplicate se foloseşte în cadrul clauzei SELECT opţiunea
DISTINCT.
Problema 7. Să se afişeze stocul şi denumirile produselor exprimate în bucăţi care au stoc de cel
puţin 15 unităţi.
Problema 8. Să se afişeze numai produsele care au unitatea de măsură exprimată în set şi cut
utilizând tabelul Produse din baza de date MAGAZIN.
Rezolvare: Pentru construirea interogării se parcurg următorii paşi:
1. se selectează fila Create şi se efectuează click pe butonul Query Design
2. se afişează fereastra Show Table ce conţine o listă a tabelelor şi interogărilor care pot
reprezenta sursa de date pentru interogare. Se selectează tabela Produse, se acţionează
butonul Add. Se termină operaţia de selectare prin acţionarea butonului Close.
11
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Observaţie - se pot selecta în orice moment şi alte tabele prin apăsarea butonului Show Table din fila
Query Design Tools.
- Fereastra Design View conţine două zone principale: zona din partea de sus a ferestrei unde
sunt afişate tabelele şi relaţiile între acestea, iar cea din partea de jos afişează câmpurile şi criteriile
de filtrare.
3. se selectează câmpurile care vor participa la construirea interogării. Se efectuează click
pe prima coloană, rândul Field, se efectuează click pe butonul apărut în dreapta celulei şi
se selectează câmpul Denumire al tabelului PRODUSE .
12
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
13
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Problema 9. Să se afişeze numai partenerii care au sediul în localitatea Cluj-Napoca sau Turda.
Rezolvare: Pentru construirea interogării dorite se parcurg următorii paşi:
1. se selectează fila Create şi se efectuează click pe butonul Query Design.
2. se afişează fereastra Show Table; se selectează tabela PARTENERI, se acţionează butonul
Add; se termină operaţia de selectare prin acţionarea butonului Close.
14
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
În coloana în care am pus atributul Stoc, linia Criteria, dăm clic-dreapta şi alegem opţiunea
Build… Sau, selectăm opţiunea din fila DESIGN. În fereastra
constructorului de expresii – Expression Builder – care apare, alegem din cadrul
primei liste Operators, din a doua Comparison, iar din a treia Between şi formăm
expresia de mai jos.
15
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Observatie – Se poate scrie si direct in celula din Zona Criteria expresia - Between 10 and
100.
Se va salva ca Produse cu stoc intre 10 si 100.
Problema 11. Dar produsele care au unul din următoarele stocuri: 8, 5, 200, 60?
16
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Problema 12. Să se afişeze o singură coloană, a cărei înregistrări să fie de forma: Produsul
x are codul y.
Rezolvare: Afişarea fiind pe o singură coloană indică faptul că va trebui să comasăm în aceasta
elemente din mai multe atribute, interconectate. Practic avem text concatenat cu valori ale unor
câmpuri. Operatorul de concatenate este „&”, iar textul se scrie între ghilimele. Expresia se va defini
utilizând constructorul de expresii. Pentru ca să nu apară în antetul coloanei o denumire abstractă de
tipul Expr1, vom crea un alias de coloană:
Informatie: "Produsul " & [Produse]![Denumire] & " are codul " & [Produse]![Cod]
Observatie - Spunem – s-a creat un nou camp; numele lui este Informatie, iar valorea sau continutul
:
acestuia este dat de formaula care apare dupa „ ”. Formula este data de toata expresia.
17
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
18
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Problema 14. Să se afişeze lista produselor care încep cu litera „D”. Şi pe cea a celor care
se termină în „a”. Dar cele care conţin litera „p”? Dar dacă avem litera „a” pe poziţia a doua?
Rezolvare: Pentru acest tip de probleme se foloseşte operatorul pentru şiruri de caractere LIKE. El va
fi urmat de un şablon de căutare, pentru compunerea sa utilizându-se caractere speciale de înlocuire,
care în SQL-ul utilizat în Access sunt „*” şi „?”. Primul ţine locul la oricâte caractere, sau chiar
niciunul, în timp ce al doilea înlocuieşte strict un caracter. Rezolvaţi în continuare problema pentru
a obţine următoarele rezultate.
Se vor crea 4 interogari, fiecare va avea ca si linie de criteriu LIKE D*, LIKE *a, Like *p*, Like ?a*.
3. Acţionăm butonul din fila DESIGN. Cu această ocazie, în cadrul tabelului din panoul
inferior va apărea o nouă linie, Totals. Din lista derulantă aferentă acestei linii alegem funcţia
Count, care va număra produsele.
4. Ataşăm un alias acestei coloane;
19
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Rezolvare: Se va rula interogarea de mai înainte nu pe tabela Produse, ci pe o altă interogare, şi anume
pe cea care returnează produsele luate o singură dată după nume, fără duplicate: Lista generica
produse.
1. Pentru a putea selecta o interogare ca sursă de date pentru o altă interogare, în fereastra Show
Table accesăm fila Queries.
Problema 17. Care este cea mai mare cantitate dintr-un produs existentă pe stoc? Dar cea
medie?
Rezolvare: Rezolvaţi problema utilizând cunoştinţele dobândite până acum.
20
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Problema 18. Să se afişeze numele partenerilor cu sediul într-o localitate introdusă de utilizator
la fiecare rulare a interogării. Rezolvare:
1. Diferenţa faţă de interogarea de selecţie constă în tastarea pe rândul Criteria a
parametrului [tastaţi localitatea]; parametrul este simbolizat de parantezele drepte între
care acesta este inclus.
2. Se salvează interogarea sub numele Parametru; la rularea interogării se va afişa în primul rând
următoarea fereastră, iar în funcţie de localitatea tipărită de utilizator se vor afişa doar
partenerii din localitatea respectivă.
3.
4. Rezultatele următoare sunt obţinute prin două rulări succesive ale aceleiaşi interogări:
..
Problema 19. Să se afişeze produsele exprimate într-o anumită unitate de măsură, dar care
se va introduce de la tastatură la fiecare rulare.
21
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
Problema 20.Să se găsească facturile de intrare înregistrate în tabelul corespunzător după data de
25 aprilie 2020 (2021) ( Indicatie – criteriul va contine >=#25/04/2021#, si Tip sa fie
C, dar atentie la formatul de data calendaristica ales initial !!!)
Problema 22. Să se realizeze o interogare asupra tabelei Istoric Pret în care să se stabilească un
câmp NOU numit Tva care să conţină tva-ul aferent preţului. Se va folosi o formulă cunoscută.
22
Universitatea Babeș-Bolyai din Cluj-Napoca
Facultatea de Științe Economice și Gestiunea Afacerilor Lucrări de laborator
Departamentul de Informatica Economică Baze de date și programe
PROBLEME PROPUSE
Problema 1. Pe baza de date transport in comun să se evidenţieze ce tip de abonament există pe
linia 25 .
Problema 2. Pe baza de date transport in comun să se determine numărul de staţii pentru fiecare
linie.
Problema 3 Pe baza de date transport in comun să se vizualizeze care este capacitatea mijloacelor
de transport neelectrificate.
Problema 4. Pe baza de date transport in comun să se vizualizeze care este tipul de abonament
efectuat pe fiecare linie iar apoi să se vizualizeze numărul total de abonamente
efectuate pe fiecare linie.
23