Interogări.pptx
Document Details
Uploaded by Deleted User
Tags
Full Transcript
INTEROGĂRI: - destinația și structura interogărilor; - crearea interogărilor cu ajutorul asistenților; OBIECTIVE: Descrierea termenilor de : interogare,criteriu de selecție, set dinamic ; Descrierea tipurilor de interogări; Identificarea algoritmului de crear...
INTEROGĂRI: - destinația și structura interogărilor; - crearea interogărilor cu ajutorul asistenților; OBIECTIVE: Descrierea termenilor de : interogare,criteriu de selecție, set dinamic ; Descrierea tipurilor de interogări; Identificarea algoritmului de crearea a diverselor tipuri de interogări; CE ESTE O INTEROGARE? Pentru a selecta rapid din unul sau mai multe tabele a seturilor de date care corespund unor condiţii, dar şi pentru actualizarea rapidă a înregistrărilor, sistemele de gestiune a bazelor de date utilizează interogări. Interogările formează o clasă specială de obiecte ale MS Access, mai sunt numite cereri sau interpelări. Este un obiect ce reprezintă o întrebare, o cerere, pe care o formulăm în legătură cu datele conținute în baza de date în scopul obținerii unor informații. Interogările reprezintă modalități de selecție și afișare a datelor din unul sau mai multe tabele conform unor criterii formulate cu ajutorul condițiilor în formă de expresii logice. Interogările îndeosebi se utilizează pentru: – vizualizarea unui subset de înregistrări dintrun tabel, fără al deschide; – afişarea întrun singur tabel a informaţiilor din cîteva tabele; – actualizarea datelor tabelelor (modificări, adăugări, excluderi de date); – efectuarea calculelor asupra valorilor cîmpurilor şi obţinerea informaţiilor noi; – crearea totalurilor, valorilor medii etc. În funcţie de tipul acţiunii şi de rezultate, interogările se clasifică în : a) de selecţie: sînt cereri formulate în baza unor condiţii logice. Ele selectează un subset de date din unul sau mai multe tabele legate între ele. De exemplu:- căutarea elevilor născuţi pînă la 10 ianuarie 1992 sînt interogări de selecţie. - afişarea elevilor clasei a 10a B b) de excludere a unor înregistrări: reprezintă cereri de eliminare dintrun tabel a tuturor înregistrărilor care satisfac criteriile logice specificate. De exemplu: cererea de ştergere din tabelul Elevi al bazei de date Liceu a informaţiilor despre elevii claselor a 12a (în legătură cu absolvirea liceului) reprezintă o astfel de interogare. c) de modificare a unor înregistrări: schimbă valorile unui cîmp al tabelului după acelaşi algoritm. De exemplu: mărirea cu 50% a valorilor din cîmpul Salariu al tabelului Profesori poate fi realizată cu ajutorul unei interogări de modificare. În funcţie de tipul acţiunii şi de rezultate, interogările se clasifică în : d) de creare a cîmpurilor rezultante: se folosesc cînd este nevoie ca o anumită informație din baza de date să fie afișată într-un cîmp aparte. De exemplu: vîrsta elevilor se va prezenta întrun cîmp aparte ca rezultat al diferenței între data curentă și data nașterii elevului. e) de grupare şi totalizare se folosesc pentru sumarea datelor cîmpurilor, obţinerea valorilor medii, a celor minimale sau maximale etc. De exemplu: calcularea numărului total de ore pe săptămînă realizate în fiecare clasă a bazei de date Liceu se va face cu ajutorul unei interogări de grupare şi totalizare. f) încrucişate sînt destinate prezentării compacte a informaţiilor sub formă de tabel. De exemplu: informaţia despre numărul săptămînal de ore rezervat fiecărei discipline în fiecare clasă poate fi afişată cu ajutorul unei interogări încrucişate sub forma următorului tabel: În toate cazurile , cu excepția ultimelor două, rezultatul interogării este un nou set de date, numit set dinamic. Acesta conține doar cîmpurile specificate ale înregistrărilor din tabele specificate care corespund condițiilor specificate. Interogări de Selecție Algoritm: 1. Din meniul Create alegem opțiunea QueryDesign. 2. Selectăm tabelul sau tabelele din care dorim să extragem date în felul următor: click pe tabel apoi click pe butonul Add. 3. Click pe butonul Close. 4. În rezultat este afișată ferestra de compunere a interogării numită formular QBE. 5. În linia Field se indică cîmpurile care vor fi vizualizate în interogare. 6. În linia Table se specifică tabelul din care face cîmpul din linia Field. 7. În linia Sort se specifică dacă datele se vor sorta și în ce mod : crescător (ascending) , descrescător (descending) și nesortat (not sorted) 8. În linia Show se specifică dacă cîmpurile vor fi vizibile cînd se va executa interogarea. 9. În linia Criteria și linia or se specifică condiția sau criteriul de selecție a datelor. 10. Salvăm interogarea prin executarea click pe butonașul Save, în rezultat va apărea fereastra unde introducem numele interogării care trebuie să nu coincidă cu numele tabelelor sau altor obiecte și executăm click pe butonul Ok. 11. În rezultat interogarea a fost salvată mai jos de tabelul din care extrage date. 12. Pentru a vizualiza rezultatul se va executa dublu click pe numele acesteia. Ce reprezintă criteriul de selecție ? Un moment important în procesul de elaborare a interogărilor este scrierea criteriului de selecţie. Criteriul de selecție este o expresie sau o condiție de selectare a datelor inclusă în cîmpul Criteria la definirea interogărilor. Exemplu: Pentru a afişa lista elevilor cu prenumele Ion, este suficient să se scrie în celula Criteria a cîmpului Pren_elev (din tabelul Elevi) şirul de caractere "Ion". Deoarece criteriile de selecţie sînt expresii logice Access, pentru scrierea lor pot fi utilizate funcţiile şi operatorii studiaţi la lecțiile precedente, inclusiv cei logici. Astfel: a) pentru un cîmp pot fi definite mai multe condiţii de selecţie legate între ele cu opera torul OR: prima se scrie în rîndul Criteria, iar celelalte – mai jos, cîte una în fiecare celulă; b) două sau mai multe condiţii din rîndul Criteria se consideră legate între ele cu operatorul AND. Exemple: - Dacă pentru cîmpul Pret vom specifica condiția >50 , vom obține toate cărțile ce au un preț mai mare ca 50. Analogin putem utiliza și următorii operatri aritmetici: =,=1.3.05” vom obține toate comenzile executate începînd cu 1 martie 2005. Exemple: - Pentru a selecta înregistrările cu date ce se conțin într-un interval, folosim operatorul Between … And (în traducere Între … și) , de exemplu condiția : Between 3.4.05 And 20.4.05 pentru cîmpul DataImpr va afișa toate cărțile împrumutate în perioada 3 aprilie 2005 – 20 aprilie 2005. Between C And G pentru cîmpul NumeCit se va afișa cititorii ale căror nume încep cu una din literele C,D,E,F(nu și G) - Dacă dorim să selectăm doar acele înregistrări care nu conțin valori în cîmpul dat, vom specifica criteriul : Is Null. Dacă de exemplu se va specifica acest criteriu pentru cîmpul DataRestit se vor obține toate comenzile în care lipsește restituirea. Exemple: - Dacă dorim să afișăm doar înregistrările care conțin valori în cîmpul dat, specificăm pentru acest cîmp condiția Is Not Null. - Dacă vom include funcția Date() în cîmpuri de tip Date/Time, putem selecta înregistrările ce conțin o dată anumită. De exemplu dacă în cîmpul : DataÎmpr vom specifica condiția Date() se vor afișa cărțile împrumutate în ziua curentă. DataÎmpr vom specifica condiția Date() – [DataImpr]>10 , iar în cîmpul DataRestit- condiția Is Null se vor afișa toți cititorii care nu au restituit cărțile în termen de 10 zile. - Dacă dorim de exemplu să afișăm cărțile editate în mai multe țări concomitent vom specifica condiția în felul următor : In(SUA;Rominia;Moldova) - La fomularea criteriilor putem folosi și operatori logici: And(și), Or(sau) și Not(negația). Astfel, condiția Between #3.4.03# And #20.4.03#, examinată mai sus, ar putea fi rescrisă astfel : >=#3.4.03# and