Sunteți pe pagina 1din 32

SGBD-ul MICROSOFT ACCESS Obiecte de tip interogare

Interogarea unei baze de date nseamn regsirea i extragerea informaiilor stocate n aceasta. Pentru realizarea interogrilor SGBD Access une la dis oziia utilizatorilor obiectele de tip cereri (Query). !ezultatul cererii se rezint sub forma unei foi de rs uns dinamic care oart numele de DynaSet. "oaia de rs uns dinamic (DynaSet-ul) nu mai exist fizic du nc#iderea cererii. $ cerere oate a%ea dre t surs de date unul sau mai multe tabele ale bazei de date sau c#iar o alt cerere creat anterior. Interogrile re rezint un instrument esenial n lucrul cu orice sistem de gestiune a bazelor de date. &le sunt folosite entru selectarea nregistrrilor' actualizarea tabelelor i entru adugarea de noi nregistrri ntr(un tabel. Interogrile se folosesc cel mai frec%ent ot fi folosite entru combinarea informaiilor din diferite tabele . Interogrile se ot crea cu a)utorul rutinei Simple Query Wizard sau rin roiectare n fereastra Query Design. $ cerere Access oate fi utilizat entru* ( ( ( ( regsirea i ordonarea datelor du anumite criterii+ efectuarea de calcule+ actualizarea bazei de date , rin cereri de ti aciune-+ regtirea datelor n %ederea afirii lor n formulare sau ra oarte+

selectarea anumitor gru uri de nregistrri care nde linesc anumite condiii. De asemenea ele

Tipuri de interogri Access ermite crearea a atru ti uri de interogri* Interogri de ti Select entru extragerea datelor din unul sau mai multe tabele i de a le afia n form tabelar. Interogrile de ti Select nu ermit actualizarea datelor selectate ci doar %izualizarea lor. De obicei acest ti de interogare constituie o surs de date entru un ra ort sau formular. Interogri de ti Crosstab entru sintetizarea datelor din unul sau mai multe tabele ca foaie de calcul ,asemntor cu foile de calcul &xcel-. Interogri de ti Action entru crearea unor noi tabele' sau entru modificarea datelor dintr(un tabel existent. &xist urmtoarele categorii de interogri de aciune* Interogri de ti Make Table care ermit crearea de noi tabele extragerea informaiilor din tabelele existente n baza de date+ rin

Interogri de ti Update care ermit actualizarea ,modificarea- datelor din tabelele existente fr a crea tabele noi sau nregistrri noi+ Interogri de ti Append care ermit adugarea de noi nregistrri ntr(o tabel existent Interogri de ti Delete care ermit tergerea unor nregistrri dintr(o tabel existent funcie de criteriile introduse de utilizator.

Interogrile de ti Parameter care folosesc aceeai interogare de mai multe ori cu arametrii diferii. Dintre acestea cererile de selecie sunt cele mai utilizate ele' asigur.nd utilizatorilor

osibilitatea consultrii bazei de date.. Operaii pri ind un obiect de tip interogare $ eraiile ri%ind obiectele de ti cerere se refer la crearea utilizarea ,acti%area interogrii i afiarea datelor- i res ecti% modi!icarea acestora. Pentru exem lificarea cererilor de interogare din acest curs %om considerare o baz de date constituit entru gestionarea roduselor ,stocurilor- dintr(un magazin' a%and sc#ema de mai )os *

Crearea unui obiect de tip interogare /rearea unei cereri de selecie se oate realiza n mod grafic ,mod im licit- sau n mod S!" , rin construirea unui bloc de cerere folosind limba)ul declarati% Structured Query Language). 0om rezenta ambele moduri de construire a interogrilor bazei de date "iind un obiect Access' ince erea crerii interogrii se realizeaz n fereastra Database rin acti%area fiei Query ,s ecific.nd astfel ti ul de obiect Access e care dorim s l crem- i a oi a sarea butonului New, sau select.nd din meniul "nsert o iunea Query. Access ofer mai multe modaliti de creare a cererilor. Aceste modaliti sunt enunate n caseta de dialog New Query afiat ca urmare a iniierii o eraiei de creare a cererii* ( modul grafic de roiectare' Design View , roiectarea interogrilor utiliz.nd interfaa grafic este cunoscut sub numele Query By E a!ple)" ( utilizarea asistentului entru cereri sim le' Si!ple Query #i$ard" ( utilizarea asistentului entru cereri ncruciate' %ross&ab Query #i$ard" ( utilizarea asistentului entru cutarea nregistrrilor du licat' 'in( Duplica&es Query #i$ard" ( utilizarea asistentului entru cutarea nregistrrilor care nu au cores ondent n dou tabele' 'ind )n!atc*ed Query #i$ard.

Pentru crearea unei cereri de selecie se alege o iunea De#ign $ie% din caseta 1e2 !uer& sau a o iunii Create 'uer& in de#ign $ie% ' aa cum se obser% n figura urmtoare*

( Du alegerea modului de creare' se trece la selectarea tabelelor surs din care se %or extrage datele. /aseta S#o$ Table din figura de mai )os ofer osibilitatea recizrii sursei de date entru construirea cererii.

Sur#a de date entru o cerere (Query) oate fi re rezentat de* ( ( ( una sau mai multe tabele+ una sau mai multe interogri+ tabele i interogri.

Se %or selecta tabela3tabelele i3sau cererile surs i se %a aciona butonul +dd entru a realiza aducerea acestora n fereastra de roiectare a cererii. Du a fost recizat sursa de date se %a nc#ide fereastra S#o$ Table rin acionarea butonului Close . 4a ne%oie se oate redesc#ide fereastra folosind butonul S#o$ Table din bara de instrumente S#o$ Table din meniul Query. Du selectarea tabelelor fereastra rinci al Access %a fi*
Sursa de Date

sau o iunea

Grila 7uer8 Design

"ereastra Select Query ,de mai sus - este m rit n dou zone* a. 5ona su erioar' n care se %izualizeaz tabelele3interogrile surs de date recum i relaiile definite ntre acestea+ b. Grila Query Design structurat astfel* 6 4inia Field) rezer%at entru definirea numelui atributului selectat+ 6 4inia Table) destinat recizrii sursei de date+ 6 4inia Sort* ermite recizarea sensului sortrii entru atributul din coloana res ecti%+ 6 4inia S*o%) ermite in#ibarea afirii realizrilor c.m ului res ecti%+ 6 4inia Criteria) ofer osibilitatea recizrii criteriilor de selecie rin introducerea ex resiilor Access cores unztoare+

6 4iniile Or) ermit recizarea mai multor criterii de selecie n cazul ex resiilor +ccess utiliz.nd o eratorul OR( $dat s ecificat sursa de date' definirea interogrii de selecie resu une arcurgerea urmtorilor ai* +. Selectarea ti ului de interogare se oate face din meniul rinci al' o iunea 7uer8*

sau de la butonul 7uer8 t8 e de e bara de butoane*

Ob#( Butonul

ermite unerea n execuie a interogrii.

,( Precizarea atributelor ale cror realizri urmeaz s le returneze cererea. 1umele acestor atribute se %or reciza n grila !uer& De#ign n r.ndul Field utiliz.nd una din urmtoarele modaliti*

6 Selectarea atributului din cadrul listei Field -a.e ce oate fi desc#is rin acionarea cu mouse(ul a butonului "i#t Bo/ 0 6 &xecutarea unui dublu clic de mouse asu ra atributului dorit din tabela3interogarea aflat n anoul su erior+ 6 9etoda drag-and-drop care resu une selectarea cu mouse(ul a atributului dorit din anoul su erior i tractarea acestuia n linia Field( Dac este necesar s fie aduse n anoul inferior toate atributele a arin.nd unei tabele se %a roceda n unul din urmtoarele moduri* 6 Selectarea tuturor atributelor din tabela surs ,aflat n anoul su erior- rintr(un dublu clic de mouse e numele tabelei i glisarea atributelor n grila Design , anoul inferior-+ 6 :tilizarea asteriscului a arin.nd tabelei surs* tragei cu mouse(ul asteriscul n rima coloan "ield. /#iar dac n grila de roiectare este com letat doar rima coloan Field la execuie interogarea %a returna realizrile tuturor atributelor+

/aseta 7uer8 Pro erties 6 :tilizarea proprietii Output All Field#) Se %a desc#ide caseta !uer& 1ropertie#

utiliz.nd butonul 1ropertie#

din bara de instrumente sau execut.nd dublu clic; ntr(o zon

liber a anoului su erior' n linia ,utput +ll 'ields se %a reciza -es ,figura de mai sus - .

Precizarea %alorii -es entru ro rietatea ,utput +ll 'ields nu %a determina aducerea n grila de roiectare a c.m urilor din tabela surs' dar' n momentul executrii cererii' DynaSet-u. %a cu rinde realizrile tuturor atributelor. <n mod im licit n DynaSet, antetul coloanelor este re rezentat de numele atributului' cu exce ia cazului n care la crearea tabelei ai recizat o alt etic#et rin intermediul ro rietii Caption( Dac dorii afiarea n DynaSet a unei noi etic#ete entru un atribut lasai mouse(ul n linia "ield naintea numelui atributului' tastai etic#eta dorit urmat de caracterul =*=. >. Se recizeaz criteriul de selecie ,n mod im licit se returneaz realizrile tuturor

tu lurilor entru atributele s ecificate- rin introducerea unei ex resii +ccess %alide n r.ndul Criteria ,e%entual i r.ndul $!-. Acest criteriu ermite selectarea doar a anumitor nregistrri care nde linesc anumite condiii Introducerea ex resiei +ccess se face rin tastare sau se construiete rin intermediul generatorului de ex resii 2E/pre##ion Builder3 a crui fereastr se desc#ide select.nd o iunea Build a meniului contextual e care l acti%ai rintr(un clic drea ta de mouse n r.ndul 'ield.

/riteriile de selectare se ot construi cu a)utorul constructorului de ex resii care oate fi acti%at fie rin intermediul butonului ?Build@ de e bara de butoane*

fie din meniul local acti%at cu butonul drea ta a mouse(ului

* Se %a une n execuie astfel &x ression Builder*

A. Se recizeaz' dac este necesar' c.m ul3c.m urile du care se dorete o e%entual sortare i sensul acestei a n linia Sort(

Proiectarea unei interogri de selecie

<n figura de mai sus se rezint modul n care s(a definit interogarea de selecie rin care se realizeaz afiarea stocului entru rodusul faina. Sursa de date a cererii este re rezentat de trei tabele ale bazei de date* 'urni$ori, /roduse i res ecti% Stocuri. In ri%ina cererilor de selecie care au ca surs mai multe tabele trebuie recizat c' n mod im licit' Access utilizeaz o eraia de ec*ico!punere, fa t ce conduce la selectarea nregistrrilor ce au cores ondent n ambele tabele ,interogri de ti 0nner 1oin). De exem lu' dac se realizeaz o cerere asu ra tabelelor /roduse i Stocuri, fr a se s ecifica %reun criteriu' n lista rezultatelor nu %or figura dec.t rodusele entru care exist ce%a n stoc. Dac se dorete realizarea unei interogri de ti ,uter 1oin ,folosind o eraia de com unere extern- se %a efectua dublu clic; asu ra liniei de legtur dintre tabele i' n caseta 1oin /roperties ,ca n figura de mai )os - se oate reciza selectarea tuturor nregistrrilor din una dintre tabele' indiferent dac au sau nu cores ondent n cealalt tabel. Pentru realizarea o eraiei de com unere e baza unei relaii de inegalitate ,B' C' o- a c.m urilor de legtur dintre tabele se oate folosi limba)ul S74. $ cerere ce are ca surs dou tabele ntre care nu exist nici o relaie %a a%ea ca rezultat rodusul cartezian al nregistrrilor din cele dou tabele.

/aseta Doin Pro erties E/ecutarea interogrii de aciune se oate realiza n unul din urmtoarele moduri* 6 :tiliz.nd butonul !uer& $ie% , rimul n bara de instrumente-+

6 :tiliz.nd butonul Run

din bara de instrumente+

6 :tiliz.nd o iunea Data#*eet din meniul $ie%0 6 :tiliz.nd o iunea !un din meniul !uer&( In "igura de mai )os este redat rezultatul executrii cererii anterior roiectate.

!ezultatul unei interogari de selectie !e%enirea n modul Design se realizeaz rin acti%area butonului De#ign $ie% bara de instrumente sau select.nd din meniul $ie% o iunea De#ign $ie%( Sal%area interogrii roiectate se oate realiza rin o iunea Sa e din meniul File sau nc#iz.nd fereastra Select Query, n ambele situaii utilizatorul fiind in%itat s tasteze numele interogrii create ,n mod im licit este atribuit numele Query n, unde n indic numrul cererii-. Modi!icarea unei cereri Pentru a modifica o cerere' aceasta trebuie desc#is n modul De#ign( 9odificrile se ot realiza inser.nd noi coloane sau terg.nd coloane de)a definite. Inserarea unei noi coloane se efectueaz select.nd coloana naintea creia dorim s introducem noua coloan i aleg.nd opiunea Colu. n din .eniul In#ert( Etergerea unei coloane din grila de roiectare se realizeaz select.nd coloana i acion.nd tasta Delete sau butonul Cut din bara de instrumente sau execut.nd o iunea Delete Colu.n din .eniul Edit( 9odificarea unei cereri oate resu une i extinderea sursei de date ,utiliz.nd fereastra S*o% Table3( De asemenea modificarea cererii oate im lica i recizarea unor formate de afiare asociate unor coloane entru ca datele returnate s fie uor de arcurs , entru recizarea

unui anumit format de afiare se %a lasa cursorul mouse(ului n coloana dorit i se %a executa clic drea ta' select.ndu(se din meniul contextual o iunea 1ropertie#( 0a fi afiat caseta Field 1ropertie# ,figura alturat- n care se %a utea s ecifica numrul de zecimale dorit sau un format de afiare entru c.m ul res ecti%.

Pe l.ng modurile de %izualizare De#ign i Data#*eet Access ermite utilizatorilor %izualizarea i modificarea codului S74 al interogrilor. Pentru aceasta se %a a ela din meniul $ie% o iunea S!" $ie%( "raza S74 ce st la baza cererii exem lificate n "igura A. FG este rezentat n figura de mai )os

9odificarea interogrilor n modul S74 0ie2

C%mpuri calculate &n interog'ri de selec(ie Interogrile de selecie ot cu rinde i c.m uri calculate. Aceste c.m uri returneaz' la executarea interogrii' %aloarea ex resiilor Access asociate lor.

&xem lu de cam calculat intr(o interogare Pentru a aduga un c.m calculat ntr(o interogare se tasteaz numele acestuia ntr(o nou coloan din grila !uer& De#ign4 se adaug dou uncte* i a oi se com leteaz ex resia dorit. E e!plu2 Interogarea din "igura de mai sus calculeaz data limit .n la care trebuie onorat fiecare comand.

E/pre#ii 5i operatori pentru interogri


&lementele unei ex resii Access sunt* ( ( ( ( ,peratori3, %onstantele" 0denti4icatorii" 'unc5iile.

Operatorii utilizai n construirea ex resiilor Access se ot clasifica astfel* 6 Arit.etici) H'('I'3' 9od ,returneaz restul m ririi la un ntreg-' A ,ridicare la utere-. 6 De atribuire 5i co.parare) 74 84 94 874 974 8 9( Aceti o eratori returneaz %alorile logice True i "alse.' &xce ie re rezint cazul n care unul dintre o eratori are %aloarea -ull i deci' orice com arare %a returna %aloarea -ull(

6 "ogici) +nd, ,r, Not. Se ot utiliza entru construirea ex resiilor Access com use. 6 De concatenare a irurilor de caractere* H' J. Operatori de identi:icare $ eratorii de identificare ' ; 5i ( ' sunt s ecific rogramului Access. $ eratorul ; se mai numete i operatorul bang. &i sunt folosii n urmtoarele situaii* /ombinarea denumirilor claselor de obiecte i a denumirilor obiectelor selecta un anumit obiect sau a ro rietii unui obiect. &xem lu* "ormsK1ote Deosebirea denumirilor obiectelor de denumirea ro rietilor+ exem lu* LextboxF."ontsizeMFN Identificarea anumitor c.m uri din tabele * studentiKmarca entru a

/aracterul K este folosit entru se ararea referinelor de obiecte. Sintaxa* Clasa)obiect*Denumire)obiect. /aracterul . se ar obiectele i ro rietile sau metodele acestora' sintaxa fiind* Clasa)+biect*+biect.Proprietate sau Clasa)+biect*+biect.Metoda

Ali operatori $ erator Is 4i;e In Bet2een Descriere "olosit cu %aloarea logic 1ull entru a stabili dac o %aloare este 1ull sau nu Determin dac un ir de caractere nce e cu un anumit refix Determin dac o %aloare de ti ir a are ntr(o list de %alori Determin dac o %aloare numeric sau o dat calendaristic se gsete ntr(un anumit inter%al de %alori &xem lu Is 1ull Is 1ot 1ull 4i;e ?&O&I@ 4i;e ?"I4&PPPP@ O In ,?AB/@'@ggg@'@"I4&@Bet2een F and G

&x resiile Access utiliz.nd o eratorul "i<e ermit s ecificarea unor criterii de selecie rin cutarea unui ir ntr(un text. n interiorul textului se ot folosi caracterele generice P , oate nlocui orice caracter n oziia n care a are- i I ,orice n oziia n care a are i n urmtoarele-.

"igura A. QF Astfel ex resia 4i;e =LomI= selecteaz toate numele care conin e rimele trei oziii caracterele =Lom=' iar ex resia 4i;e uIescu= %a ermite selecia numelor terminate n =eseu=. $ eratorul In recizeaz mulimea de %alori admise entru un atribut. Interogarea din "igura A. QQ %a selecta clienii de ti S!4 ,a cror denumire se termin cu aceste trei caractere- ce au comandat rodusele =cablu telefonic= sau =banda izolanta=.

"igura A. QQ Con#tantele utilizate n construirea ex resiilor Access ot fi de natur* 6 nu.eric ,ex*FQNN'R'N- +

text (ex:"123", "TOMA ION", str. Viilor 15); 6 Dat calendari#tic ,ex* SFQ.>F.NFS ceea ce indic data de >F decembrie QNNF-. Identi:icatorii sunt nume de obiecte Access ,tabele' atribute' formulare'etc- ca de exem lu TProduseUK Tcod rodusU. Prin intermediul identificatorilor se ot relua %alori entru definirea criteriilor de e formulare create anterior. &xem lul din "igura A. Q> rezint o interogare ce %a afia comenzile i data comenzilor entru un rodus a crui nume a fost selectat ntr(o casetaV de ti Lis&Bo ,numit Lista/rodu.se) e un formular numit Selec5ie6. Funciile care ot fi de natur* 6 Dat calendari#tic * Date,- 9ont#,-' Wear ,-' etc. &xem le* Date() returneaz data curent+ 7ont*(Date()8 returneaz numrul lunii calendaristice curente. -ear(Date(9)) returneaz anul curent. 6 De tip te/t) 4en,- ( returneaz lungimea unui ir' Lrim7 ( elimin s aiile de la nce utul i de la sf.ritul unui ir' 4eft,- ( returneaz rimele n caractere de la nce utl unui ir' etc. 6 Mate.atice 5i trigono.etrice) ABS,- ( returneaz %aloarea absolut a unui numr' I1L,- ( returneaz artea intreag dintr(o %aloare numeric' !$:1D,- (rotun)ete o %aloare cu un anumit numr de zecimale'S:9,- ( calculeaz suma' A0G,- ( calculeaz media' etc. 6 Financiare) P0,- returneaz %aloarea actual a unei anuiti ltite n rate eriodice egale' S41,- returneaz %aloarea amortizarea unui mi)loc fix du o anumit erioad ,amortizare liniar- etc. 6 Funcii di er#e) IS1:9&!I/,-' IS1:44,-' etc. &x resii ot fi utilizate ntr(o interogare de selecie fie dre t criterii de selecie fie entru a calcula anumii indicatori. &x resia oate fi tastat n r.ndul 'ield al unei coloane ,exem lul din "igura A. QN- sau oate fi construit cu a)utorul generatorului de ex resii ,a crui fereastr se acti%eaz efectu.nd clic drea ta n linia 'ield i select.nd din mediul contextual o iunea Build). &xem lul din "igura A. QA rezint utilizarea generatorului de ex resii entru a calcula %aloarea fiecrui rodus de e o comand.

"ereastra &x resion Builder cu un alt exem lu Parametrizarea interogrilor Interogrile de selecie rezentate .n n acest moment returneaz ntotdeauna tu lurile din tabelele surs care cores und unei anumite cereri fixe* clienii trebuie s aib domiciliul n Bucureti sau Ploieti iar data li%rrii s fie anterioare datei curente ,%ezi exem lul de interogare de selecie rezentat ntr(un aragraf anterior-. De multe ori ns' ar fi util o interogare al crei criteriu de selecie s oat fi recizat la ni%el general i articularizat de utilizator n funcie de necesitile sale de informare , reciz.ndu(se concret ce realizri ale atributului sunt cutatec#iar n momentul execuiei cererii. $ astfel de interogare se caracterizeaz rin fa tul c n grila De#ign4 e coloana dorit' n linia Criteria4 se %a reciza ntre aranteze dre te un mesa) ce urmeaz a fi afiat la executarea cererii ermi.nd ca utilizatorul s introduc criteriul de selecie dorit. Parametrii ot fi utilizai nu doar n r.ndul de criterii' ci i n formulele c.m urilor calculate' dac se dorete introducerea unui termen %ariabil n ex resii. Practic n aceste interogri se dorete ca ex resia ,criteriul- din interogare s fie %ariabil de la o execuie la alta se oate crea o interogare cu arametru. <n acest caz criteriile sunt introduse n caseta de dialog &nter Parameter 0alue. Se desc#ide interogarea n mod design %ie2' i n c.m ul criteria se introduce un text ntre aranteze dre te.

Acest text %a fi afiat n caseta de dialog &nter Parameter 0alue n momentul n care se une n execuie interogarea' iar utilizatorul oate introduce criteriul de selecie n mod dinamic' la execuie.

Lraducerea S74 %a fi* S&4&/L s ecial.codXs ec "!$9 ,, rofile I11&! D$I1 ,ani I11&! D$I1 P4A1& $1 ani.an M P4A1&.as- $1 rofile.codX rof M P4A1&.codX rof- I11&! D$I1 s ecial $1 ,s ecial.codXs ec M P4A1&.codXs ec- A1D , rofile.codX rof M s ecial.codX rof-- I11&! D$I1 studenti $1 ,ani.an M studenti.anXs- A1D ,s ecial.codXs ec M studenti.codXs ec- A1D , rofile.codX rof M studenti.codX rofYZ&!& ,,,studenti.Data1Bet2een SF3F3F[\NS And SF3F3F[]NSA1D ,, rofile.codX rof-MTIntroducei cod rofil*U--+ studenti.marca' studenti.nume' studenti.Data1' rofile.codX rof'

Interogri de sintetizare a datelor (gruparea datelor ) Pe l.ng osibilitatea de a utiliza ex resii entru a aduga c.m uri calculate n interogri' Access ermite utilizatorilor realizarea unor cereri rin intermediul crora se ot a lica funcii unor nregistrri gru ate du criterii restabilite. Prin intermediul acestor ^uer8 cu rol de

sintetizare a datelor se ot construi cu uurin cereri care s returneze totalul' media' minimul sau maximul unor gru uri de tu luri. Pentru a realiza o cerere de sintetizare a datelor se %a elabora interogarea de selecie aduc.ndu(se n grila Query Design c.m urile necesare i adug.ndu(se e%entualele c.m uri calculate' du care se %a a sa butonul :otals din bara de instrumente. /a rezultat al acestei o eraii' n grila Query Design, %a fi dis onibil un nou r.nd intitulat :otal, n mod im licit' gru area datelor du %alorile c.m ului toate coloanele %or a%ea selectat n linia total o iunea Group B& care conduce la res ecti%. Se %a stra o iunea ;roup By n dre tul c.m urilor de gru are' urm.nd ca entru celelalte c.m uri s fie selectat din lista de selecie funcia dorit. 4ista conine nou funcii de ti agregat ce sunt rezentate n tabelul urmtor* Funcia AVG CO NT F"#$T &A$T MA' M"N $TD)V $ M VA# <eturnea$a Media aritmetic Numrul total de !alori %rima !aloare ltima !aloare Valoarea ma(im Valoarea minim De!iaia standar a !alorilor $uma !alorilor Varianta !alorilor Tipul de cmpuri pentru care se poate aplica Number, Date, Currency, AutoNumber Toate tipurile Toate tipurile Toate tipurile Te(t, Number, Date, Currency, AutoNumber Te(t, Number, Date, Currency, AutoNumber Number, Date, Currency, AutoNumber Number, Date, Currency, AutoNumber Number, Date, Currency, AutoNumber

Pe l.ng aceste funcii mai sunt dis onibile o iunile #=E<E i E>/<ESS0,N. ( ( $ iunea =*ere se %a utiliza dac un c.m trebuie utilizat entru a reciza anumite criterii $ iunea E/pre##ion se %a utiliza entru c.m urile calculate ce returneaz un singur rezultat de selecie' dar nu se dorete efectuarea gru rii du c.m ul res ecti%. la ni%elul gru ului.

Interogri de tip Cro##tab


Interogrile /rosstab sunt interogri sintetice cu a)utorul crora se oate determina cu exactitate modul n care sunt afiate e ecran datele sintetice. Interogrile /rosstab afieaz datele sintetice n forma tradiional a foilor de calcul tabelar asemntoare cu tabelele i%ot din &xcel.

Practic' este osibil elaborarea unor tabele n care gru area i ordonarea datelor se realizeaz at.t e linii c.t i e coloane la intersecia crora se ot efectua calcule com lexe. &ta ele ce trebuie urmate entru realizarea unei astfel de cereri de interogare sunt urmtoarele * F. &laborarea unei interogri de selecie n modul Design View. Se %or alege tabelele ce conine datele i se %or selecta c.m urile dorite entru afiare i e%entualele c.m uri entru care se %or im une restricii. Q. Din meniul Query se %a selecta o iunea %ross:ab Query ce %a a%ea ca efect imediat afiarea liniilor :otal i %rosstab n grila interogrii. >. Se %a s ecifica modul de agregare a datelor' res ecti% funciile totalizatoare n linia :otal. A. In linia %ross:ab se %a o ta entru <ow =eading n cazul c.m urile ce %or fi afiate e liniile tabelului' %olu!n =eading entru c.m ul ce %a fi afiat e %ertical' i Value entru %alorile ce %or fi afiate la intersecia liniilor cu coloanele. &ste ermis existena mai multor c.m uri ordonate e orizontal (<ow =eading), dar a unui singur c.m %olu!n =eading i a unui singur c.m Value &xem lu* $ interogare care %a a%ea ca rezultat un tabel sintetic cu rezultatele la examene ale unei s ecializri ar utea a%ea urmtoarea structur*

Pentru a crea o interogare se selecteaz c.m urile dorite din unul sau mai multe tabele' a oi se s ecific unul dintre c.m uri ca fiind de ti ul _/olumn Zeading@' unul sau mai multe c.m uri' de ti ul _!o2 Zeading@ i unul de ti _%alue@.

/.m ul de ti _%alue@ %a a are la intersecia unei linii cu o coloan+ entru acest c.m se s ecific o funcie agregat ca de exem lu Sum' /ount' etc din linia Lotal. /elelalte c.m uri' care a ar n tabelul sintetic %or a%ea clauza _Y#ere@ n linia Lotal i %or fi folosite la s ecificarea unor criterii din interogare.

Interogri tip aciune


Pe l.ng interogrile exem lificate n entru selecia datelor i cele de ti %ross:ab care au fost aragrafele anterioare' S.G.B.D. Access une la dis oziia utilizatorilor o

categorie distinct de interogri care ermit mani ularea i actualizarea nregistrrilor. &xtrem de utile n ex loatarea bazei de date acestea ot a%ea ca rezultat* I /rearea de noi tabele (7a?e :able Query) I Actualizarea datelor ()pdate Query) I Adugarea de noi nregistrri (+ppend Query) I Etergerea nregistrrilor (Delete Query) 9odul de elaborare a unei interogri ti aciune este similar celui rezentat n cazul interogrilor de selecie' resu un.nd ca eta su limentar s ecificarea ex licit rin intermediul meniului Query a ti ului de cerere dorit. 9odificrile asu ra bazei de date sunt efectuate doar n momentul execuiei interogrii care se oate realiza rin a sarea butonului din bara de instrumente Query Design sau rin desc#iderea interogrii n fereastra Database . &ste recomandat roiectarea n realabil a cererii ca o sim l interogare de selecie i %erificarea rezultatelor ce %or fi afectate deoarece nu exist osibilitatea re%enirii n cazul tergerii sau modificrii eronate a nregistrrilor .

Interogri de tip Ma<e Table


4a crearea acestor ti uri de interogri' du includerea tabelelor surs i alegerea ti ului de interogare _9a;e table@' Access %a solicita utilizatorului numele tabelului de date care se %a crea*

1oul tabel %a relua din tabelele existente toate c.m urile selectate n linia "ield din tabelele existente' e%entual cu s ecificarea unui criteriu. Lraducerea S74 %a fi* S&4&/L studenti.marca' I1L$ TnoteU "!$9 ani I11&! D$I1 ,,, rofile I11&! D$I1 P4A1& $1 rofile.codX rof M P4A1&.codX rof- I11&! D$I1 s ecial $1 ,s ecial.codXs ec M P4A1&.codXs ec- A1D , rofile.codX rof M s ecial.codX rof-- I11&! D$I1 studenti $1 ,s ecial.codXs ec M studenti.codXs ec- A1D , rofile.codX rof M studenti.codX rof-- $1 ,ani.an M studenti.anXsA1D ,ani.an M P4A1&.as-+ rofile.codX rof' s ecial.codXs ec' ani.an' P4A1&.codXdisc

Interogri de tip >pdate


Aceste ti uri de interogri ermit actalizarea datelor dintr(un tabel sau mai multe tabele. Du alegerea ti ului de interogare ?: date 7uer8@ i s ecificarea c.m urilor care se %or actualiza' n linia : date Lo se %a introduce ex resia care %a actualiza c.m ul res ecti%' e%entual cu s ecificarea unui criteriu' ca n exem lul urmtor*

<n limba) S74* :PDAL& TnoteU S&L TnoteU.notaXfin M Int,N.GITnoteUKTnotaXexUHN.AITnoteUKTnotaXlabU HN.RYZ&!& ,,,TnoteUKTnotaXexU-CMR- A1D ,,TnoteUKTnotaXlabU-CMR--+ Lrebuie menionat c n cadrul interogrilor )pdate nu sunt admise modificri asu ra c.m urilor c#eie rimar sau modificri ce ar utea conduce la neres ectarea restriciilor de integritate. $ situaie ce ar utea genera erori sur%ine atunci c.nd' n cazul c.m urilor de ti text' %aloarea rezultat de ete lungimea c.m ului din tabel' n acest caz %aloarea %a fi trunc#iat din artea drea t.

Interogri de tip Delete


Interogrile de ti delete ermit tergerea nregistrrilor dintr(o tabel de date' e%entual cu s ecificarea unui criteriu. Se %or selecta tabelele surs entru interogare' a oi se %a selecta tabela din care se fac tergerile astfel* se oziioneaz mouse(ul e caracterul I de la tabelul din care se %or face tergerile' a oi se trage acest caracter .n n rima coloan+ restul c.m urilor care se %or introduce %or fi utilizate doar la s ecificarea unui criteriu de tergere. Se obser% c

e linia Delete a a rut clauza "rom n dre tul tabelului din care se fac tergerile' iar n dre tul celorlalte c.m uri a a rut clauza Y#ere' care s ecific o condiie.

<n limba) S74* D&4&L& studenti.I' ani.an "!$9 ani I11&! D$I1 ,, rofile I11&! D$I1 s ecial $1 , rofile.codX rof M studenti.codX rof-- $1 ani.an M studenti.anXs YZ&!& ,,,ani.an-M=R=--+ rofile.codX rof M s ecial.codX rof- I11&! D$I1 studenti $1 ,s ecial.codXs ec M studenti.codXs ec- A1D

I-TEROG?RI 1E-TR> AD?>GAREA DE @-REGISTR?RI


Interogrile entru adugare ofer utilizatorilor osibilitatea inserrii de noi nregistrri n tabelele ornind de la nregistrrile existente. Pentru a realiza o interogare de ti +ppend este necesar arcurgerea urmtoarelor eta e* F. &laborarea unei interogri de selecie n modul Design View. Se %a alege tabela ce conine datele i %or fi luate n calcul doar c.m urile ce conin %alorile ce %or fi adugate' iar' n cazul n

care se dorete a licarea unor criterii de selecie a acestora' se %or aduga c.m urile de restricionat. Q. Se %or tasta e%entualele condiii n linia de criterii a interogrii. >. Din meniul Query se %a selecta o iunea +ppend Query ce %a conduce la afiarea casetei +ppend n care se %a selecta numele tabelei n care dorim adugarea. A. Lransformarea interogrii de selecie ntr(o interogare de adugare are ca efect imediat a ariia r.ndului +ppend :o n fereastra de roiectare a interogrii' n acest r.nd se %a s ecifica entru fiecare c.m din tabela ce conine datele denumirea c.m ului cors ondent din tabela unde %or fi adugate.

Folo#irea S!" An Acce##


4imba)ul S74 este limba)ul comun entru gestiunea bazelor de date client(ser%er.

Princi alul su a%anta) este fa tul c este un limba) standardizat' ut.ndu(se folosi un set comun de instruciuni n toate sistemele de gestiune a bazelor de date com atibile S74. S74 este un limba) de a licaie rogramare. Sintaxa S74 /omenzile S74 se im art n ase categorii* F. Data Query Language (DQL) cu rinde comenzi care returneaz date din tabele i determin modul n care sunt rezentate rezultatele. /omanda S&4&/L este rinci ala comand din aceast categorie. Q. Data 7anipulation Language (D7L) conine comenzile I1S&!L i D&4&L& care ermit adugare sau tergere de r.nduri ntregi /rocessing Language (:/Lcu rinde recum i comanda comanzile* B&GI1 :PDAL& care modific datele din coloanele s ecificate de r.nduri. >. :ransaction L!A1STA/LI$1U' /$99IL L!A1STA/LI$1`Y$!aU i !$44BA/a L!A1STA/LI$1`Y$!aU' care gru eaz mai multe o eraii D94. Dac o eraia D94 a unei tranzacii nu reuete' o eraiile D94 anulate ,derulate na oi- . recedente sunt entru bazele de date relaionale' nu un limba) de

A. Data De4inition Language (DDL) include instruciunea /!&AL& LAB4& care definete structura tabelelor. /omenzile DD4 se ot folosi tabelelor recum i entru crearea i tergerea indexurilor. ermite selectarea entru indexurilor se folosete comanda /!&AL& I1D&O. R. %ursor %ontrol Language (%%L) rocesare a unui singur r.nd din setul de rezultate al interogrii.. G. Data %ontrol Language (D%L) efectueaz funcii administrati%e cum ar fi acordarea i ridicarea !&0$a&-. /u%intele c#eie se clasific n* /omenzi ,ex. S&4&/L/alificati%e ,ex. YZ&!&/lauze ,ex. $!D&! BW$ erattori ,$ eratorii cunoscui sau D$I1"uncii entru sintetizarea gru urilor ,ex. 9I1,-Alte cu%inte c#eie ri%ilegiilor de folosire a bazei de date ,G!A1L i entru modificarea Pentru crearea

Scrierea interogrilor de #electare cu S!" Se folosete o instruciune S&4&/L care returneaz un tabel de interogare ,denumit set de rezultate-. Sintaxa* S&4&/L TA44`DISLI1/L`DISLI1/L!$YU TL$P n TP&!/&1LUU listaXselectie "!$9 listaXtabele TYZ&!& conditieU T$!D&! BW criteriu TAS/`D&S/UU unde* lista@selectie determin c.m urile care se %or include n rezultatul interogrii ,sunt cele din linia 'ields n mod Design' %alidate cu caseta de %alidare s#o2-.

/alificati%ele o ionale A44' DISLI1/L i DISLI1/L!$Y s ecific dac sunt ermise r.nduri cu acelai coninut sau nu. 9odificatorul o ional L$P n TP&!/&1LU limiteaz rezultatele interogrii la rimele n r.nduri sau la n rocente din totalul rezultatelor interogrii. "!$9 LAB4& lista@tabele s ecific sursa de tabele a interogrii. YZ&!& condi5ie filtreaz rezultatele interogrii $!D&! BW criteriu s ecific ordinea de sortare a unui obiect din sursa de date a interogrii. &xem lu* S&4&/L nume' marca "!$9 studeni YZ&!& data1 4Ia& ?I3I3F[]N@ $!D&! BW nume+ <n S74 toate instruciunile se nc#eie cu caracterul ?+@. "olosirea semnelor de unctuaie i a simbolurilor din S74 Virgula se folosete entru se ararea membrilor unei liste /arante$ele drepte se folosesc atunci c.nd denumirea unui obiect include caractere albe Dac sunt mai multe tabele surs se folosete caracterul punct ca delimitator ,ex. Studenti.marca ;*ili!elele ? se folosesc entru %alori de ti text %aracterele A Bi 9 ermit substituirea cu un singur caracter sau cu mai multe. %aracterul C se folosete n o eratorul 4Ia& entru re rezentarea unei singure cifre' sau entru delimitarea %alorilor de ti Date3Lime din ex resii /rearea unei interogri cu instruciuni S74

F. Se desc#ide baza de date dorit ,de ex. Studeni-' a oi o interogare n Design 0ie2 Q. Se nc#ide S#o2 Lable fr a selecta un tabel. >. Se desc#ide S74 0ie2. A. Se scrie instruciunea ,S&4&/L de ex."olosirea funciilor agregate din S74 Aceste funcii se folosesc entru a calcula totalul' media sau alte date statistice entru gru urile de nregistrri cu o %aloare de atribut comun ,se %a aduga clauza G!$:P BW-. Se oate limita i mai mult rezultatul clauzei G!$:P BW folosind calificati%ul o ional ZA0I1G. Sintaxa* S&4&/L TA44`DISLI1/L`DISLI1/L!$YU "unctieXagregat,cam - AS numeXalias T' listaU "!$9 numeXtabele TYZ&!& condiieU G!$:P BW criteriuXgru are TZA0I1G criteriuXagregatU T$!D&! BW criteriuXsortareU unde c.m ul folosit ca arametru ntr(o funcie agregat trebuie s fie numeric. &x* S&4&/L A%g,notaXfin- AS media' codXdisc "!$9 TnoteU YZ&!& codXs ecM=/&= A1D anM=F= G!$:P BW codXdisc $!D&! BW A%g,notaXfin- D&S/+ Se obine ca rezultat media e disci line a unei s ecializri ,/&-.

/rearea uniunilor cu S74 Se utilizeaz structura D$I1 $1 care s ecific tabelul care trebuie unit i relaia dintre c.m uri. Sintaxa* S&4&/L TA44`DISLI1/L`DISLI1/L!$YU "rom numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura T numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura U TYZ&!& conditieU T$!D&! BW criteriuU unde* numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura s ecificT denumirea tabelului cu lat cu celelalte tabele. "iecare tabel care artici ntr(o uniune trebuie introdus naintea clauzei D$I1. I11&! definete o uniune intern' 4&"L' !IGZL definesc uniuni externe. $1 criteriuXlegatura definete cele dou c.m uri care trebuie unite i relaia dintre ele. &xem lu* Lestai efectul instruciunii* S&4&/L nume' studenti.marca' notaXfin' codXdisc "!$9 studenti I11&! D$I1 TnoteU $1 studenti.marcaMnote.marca YZ&!& ,studenti.codXs ecM=/&=- and ,note.codXdiscMFAN\$!D&! BW studenti.nume+

/reare interogri de aciune cu S74 Interogri : date Sintaxa*

:PDAL& tabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura T numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura U S&L cam Mex resie T' cam Mex resieU TYZ&!& conditie U Interogri 9a;e table S&4&/L listaXc.m uri I1L$ tabelXnou "!$9 tabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura T numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura U TYZ&!& conditieU Interogri de ti A end

I1S&!L I1L$ tableXdestinaie S&4&/L TA44`DISLI1/L`DISLI1/L!$YU "rom numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura T numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura U TYZ&!& conditieXadaugareU T$!D&! BW criteriuU Interogri de ti Delete

D&4&L& "!$9 tabel

TYZ&!& conditieXstergereU Interogri de ti /rosstab

L!A1S"$!9 functieXagregat,cam - TAS aliasU S&4&/L TA44`DISLI1/L`DISLI1/L!$YU "rom numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura T numeXtabel bI11&!`4&"L`!IGZLc D$I1 tabelXlegatura $1 criteriuXlegatura U PI0$L c.m