Dobandirea de cunostinte fundamentale privind proiectarea, crearea si utilizarea bazelor de date Access
I. Scopul lucrarii: Dobandirea de cunostinte fundamentale privind proiectarea, crearea si utilizarea bazelor de date Access
II. Continutul lucrarii:
Notiuni fundamentale privind bazele de date relationale
Introducere in ACCESS
Crearea si utilizarea tabelelor. Relatii intre tabele
Interogari
Intrebari pe marginea lucrarii
III. Prezentarea lucrarii
1. Notiuni fundamentale privind bazele de date relationale
Microsoft Access este aplicatia de management al bazelor de date pusa la dispozitie de suita Microsoft Office. Spre deosebire de Excel, Access 444f56e va permite sa stocati si sa administrati volume mari de date, organizate in unitati numite inregistrari. O baza de date Access consta din urmatoarele obiecte:
Utilitarele de asistenta din aplicatia Access asigura un proces simplu, pas cu pas, de configurare a tabelelor, formularelor, paginilor de Access la date, rapoartelor si interogarilor.
O baza de date Access poate sa alimenteze cu informatii o imbinare de corespondenta din aplicatia Word, astfel incat sa puteti expedia o scrisoare de tip formular la adrese dintr-o baza de date si, in acelasi timp, sa puteti importa si exporta date in formatul eXtensible Markup Language (XML).
Pornirea aplicatiei Access
Aplicatia Access poate fi pornita in acelasi fel ca toate aplicatiile din suita Microsoft Office. Pentru a porni aplicatia Access din meniul Start, alegeti All Programs – Microsoft Office – Access. Aplicatia Access afiseaza panoul de sarcini Getting Started.
Daca aplicatia Microsoft Access este deja pornita, dati click pe pictograma sa, aflata pe bara de sarcini, pentru a-i redeschide fereastra.
De asemenea, puteti porni aplicatia Microsoft Access este deja pornita, dati click pe pictograma sa, aflata pe bara de sarcini, pentru a-i redeschide fereastra.
De asemenea, puteti porni aplicatia Access dand dublu-click pe orice baza de date Access enumerata in caseta de dialog Open Office Document.
Daca vedeti o fereastra goala atunci cand porneste aplicatia Access, panoul de sarcini Startup este dezactivat. Pentru ca sa-l reactivati, alegeti Tools – Options apoi, in tabul View din caseta de dialog Options, bifati panoul de sarcini Startup.
Obiectele principale si legaturile stabilite in sistemul de gestiune al bazelor de date Microsoft Access sunt redate in figura de mai jos.
Pentru a interactiona cu datele, Microsoft Access se foloseste de obiecte. Aproape toate elementele din Microsoft Access, cu exceptia datelor, sunt obiecte. Chiar si aplicatia este considerata un obiect (obiectul Application) care face parte dintr-o structura de nivel inalt: Microsoft Access Object Model. Obiectele apartinand acestei structuri permit modificarea si manipularea directa a datelor prin intermediul unor obiecte de date folosind in acest scop Visual Basic, fara a interactiona de fapt cu obiectele de date.
Obiectul Application contine toate obiectele Microsoft Access native (controale, formulare, rapoarte si module) cu care interactioneaza in cadrul sesiunilor de lucru. Obiecte native (native objects) sunt acele obiecte care exista in cadrul unei aplicatii gazda; ele apartin unor structuri de nivel inalt numite colectii. O colectie (collection) este un obiect care contine elemente de acelasi tip.
Elementele din fereastra Access
Bara de meniuri – dati click pe orice denumire din bara de meniuri pentru a derula un meniu.
Bara de instrumente Access – pune la dispozitie butoane pentru comenzile folosite uzual. Bara de instrumente ofera o serie de butoane ce se modifica in functie de sarcina curenta, pe masura ce lucrati in Access.
Tabel – intr-o baza de date, tabelele contin informatiile. O singura baza de date poate sa aiba mai multe tabele, fiecare cu cate un set diferit de inregistrari asociate.
Formular – formularul cu rubrici goale, gata de a fi completat, este utilizat pentru introducerea, editarea si vizualizarea informatiilor dintr-un tabel, cate o inregistrare pe rand. O singura baza de date poate sa contina multe formulare diferite, chiar mai multe formulare pentru fiecare tabel.
Caseta Ask a Question – caseta este utilitar pentru asistenta online.
Butoane pentru obiecte – dati click pe aceste butoane pentru a modifica lista ce arata tipurile de obiecte cu care doriti sa lucrati. Obiectele dintr-o baza de date sunt tabele, formulare, rapoarte, interogari, macrocomenzi si module.
Fereastra bazei de date – afiseaza liste ale obiectelor dintr-o baza de date si contine butoane ce arata obiectele de un anumit tip. Dati click pe un buton al unui obiect din lista Object, apoi dati click pe unul dintre butoanele din fereastra Database pentru a lucra cu baza de date.
Butoane de navigare in inregistrari – aceste elemente de control asigura trecerea de la o inregistrare la alta intr-o baza de date. In formulare si tabele, ele afiseaza prima, urmatoarea, anterioara sau ultima inregistrare. De asemenea, afiseaza numarul inregistrarii curente si numarul total de inregistrari din baza de date.
Bara de stare – afiseaza informatii de stare despre sarcina curenta.
Indicatori de mod – afiseaza conditiile speciale care sunt in vigoare.
Panoul de sarcini – ofera un Access rapid la alte baze de date, liste de campuri, dependente de obiecte, clipboard si optiuni pentru cautare.
Crearea unei baze de date
Atunci cand aplicatia Access porneste, se deschide panoul de sarcini Getting Started. In panou puteti opta pentru deschiderea unei baze de date existente sau pentru crearea uneia noi. Puteti incepe cu o baza de date goala si apoi sa creati tabele care sa contina datele si formularele pe baza carora sa introduceti datele, ori puteti folosi un utilitar de asistenta pentru baze de date, care va ajuta sa configurati o baza de date pentru un scop determinat, de exemplu, organizarea unui eveniment.
Crearea unei baze de date noi
Atunci cand incepeti o baza de date noua, aplicatia Access inchide orice alte baze de date deschise. Pentru a crea o baza de date noua:
Pentru a crea o baza de date noua fundamentala pe una existenta:
Cele doua proiecte Access din tabul General al casetei de dialog Templates sunt baze de date care se fundamenteaza pe un server baza de date din retea, numit SQL Server. Daca lucrati intr-o alta firma, trebuie sa detineti SQL Server si autorizatia de a-l utliza, pentru a crea un proiect de tip Access.
Salvarea unei baze de date noi
Atunci cand creati o baza de date noua Access va recomanda sa o salvati, ca prim pas. Pentru a salva o baza de date noua :
Dupa ce a fost salvata baza de date, fereastra Database afiseaza liste ale obiectelor (tabele, formulare, rapoarte si alte elemente) ce alcatuiesc baza de date. Fereastra Database pune, de asemenea, la dispozitie butoane pe care le puteti utiliza pentru a crea un obiect nou, pentru a deschide un obiect sau pentru a modifica designul sau. Deoarece este o baza de date nou, fiecare lista contine doar instrumentele pentru crearea unui obiect.
Nu este necesar sa salvati datele pe care le adaugati la fisierul unei baze de date. Orice modificare a datelor din baza de date este salvata automat pe hard-disk. Este totusi necesar sa salvati toate obiectele (tabele, interogari, formulare si rapoarte) pe care le creati in baza de date.
Crearea unei baze de date folosind un utilitar de asistenta
Atunci cand creati o baza de date folosind un utilitar de asistenta Access, tipul de baza de date pe care-l alegeti determina selectia tabelelor si formularelor pe care le va contine ea. Pentru a crea o baza de date cu un utilitar de asistenta:
Daca doriti sa adaugati campuri suplimentare la oricare dintre tabelele bazei de date, selectati campurile pe care doriti sa le adaugati, din lista aflata in dreapta si desemnati tabelul in care doriti sa le adaugati, in lista aflata in stanga. Dupa aceea dati click pe Next. Daca nu trebuie sa adaugati campuri, dati click, pur si simplu, pe Next
In pagina urmatoare a utilitarului de asistenta, selectati un stil pentru afisarile pe ecran si dati click pe Next. Selectati un stil pentru rapoartele tiparite si dati click pe Next. Introduceti un titlu pentru noua baza de date si dati click pe Next. In aceasta pagina, puteti adauga o imagine care sa fie afisata in formulare si rapoarte.
In ultima pagina a utilitarului de asistenta Database, alegeti daca sa deschideti baza de date, dupa ce este creata si dati click pe Finish.
Daca este necesar pentru tipul de baza de date pe care l-ati selectat, completati cu informatii despre firma dumneavoastra, apoi inchideti formularul pentru a salva informatiile si a afisa noua baza de date.
Vizualizarea bazei de date
Daca ati creat o baza de date noua folosind un utilitar de asistenta, aplicatia Access afiseaza panoul Main Switchboard (tablou de comanda principal), ce pune la dispozitie legaturi spre formularele pe care le puteti utiliza pentru a introduce datele in tabele. Fereastra Database este minimizata. Relatiile intre tabele sunt stabilite in conformitate cu tipul de baza de date selectat. Pentru a vizualiza fereastra Database:
Pentru a vizualiza relatiile dintre tabele, din meniul Tools alegeti comanda Relationships.
Pentru a vedea in fereastra Database o lista de obiecte de alt tip, dati click intr-unul dintre taburile din stanga listei – de exemplu tabul Forms.
Pentru a crea un tablou de comanda pentru baza de date ori pentru a modifica unul existent, alegeti Database Utilities – Switchboard Manager din meniul Tools.
Protejarea bazei de date intr-o retea
Daca fisierele dumneavoastra sunt partajate intr-o retea, puteti stabili o parola pentru a va proteja baza de date impotriva modificarilor neautorizate. Pentru a stabili o parola:
Pentru a atribui permisiuni si a modifica proprietatea cuiva asupra obiectelor bazei de date, alegeti comanda User and Group Permissions (permisiuni de utilizator si grup) din submeniul Security.
Puteti proteja o baza de date impotriva modificarilor, in timp ce este deschisa, si fara a stabili o parola. In caseta de dialog File Open, din lista autoderulanta Open, alegeti optiunea Open Exclusive.
Crearea copiilor de siguranta pentru baza de date
Aplicatia Microsoft Access va permite sa salvati copii de siguranta ale bazei de date oricat de des considerati cu cuviinta. Fiecare copie este datata, pentru a fi regasita mai usor. Pentru a crea o copie de siguranta:
Crearea tabelelor
Exista patru modalitati de creare a tabelelor puse la dispozitie de catre sistemul de gestiune a bazelor de date Microsoft Access:
1. Automat (Table Wizard);
2. Manual (Table Design);
3. Prin program (ActiveX Data Objects, Data Microsoft Access Objects);
4. Prin inscrierea directa a datelor.
Pentru exemplificare vom considera o baza de date destinata evidentei centralizate a angajatilor unei companii care isi desfasoara activitatea prin intermediul mai multor puncte de lucru. Inainte de realizarea efectiva a bazei de date cu ajutorul produsului Microsoft Access, aceasta trebuie proiectata la nivel conceptual. Pentru acest lucru vom utiliza modelul EAR (Enritate-Atribut-Relatie). In conformitate cu acest model, proiectarea unei baze de date presupune parcurgerea urmatorilor pasi:
Se identifica entitatile bazei de date, care, in cazul nostru, sunt angajatii companiei si punctele de lucru in care acestia isi desfasoara activitatea;
Se identifica asocierile dintre entitati, unde prin asociere se intelege o legatura intre doua entitati bazata pe un atribut al acestora. Stabilirea asocierilor este o operatie relativ intuitiva care, in cazul bazelor de date mari, este organizata pe baza unor metodologii. In cazul nostru, relatia de asociere se va baza pe atributul IdPunctLucru ce este comun celor doua entitati. Un angajat nu isi poate desfasura activitatea in mai mult de un punct de lucru la un moment dat;
Se identifica atributele entitatilor in functie de specificul utilizarii bazei de date. Astfel, entitatea Angajati va avea atributele IdAngajat, Nume, Prenume, DataNastere, Adresa, Telefon, NumarCopii, DataAngajare, IdPunctLucru. Pentru entitatea PuncteLucru vom utiliza urmatoarele atribute: IdPunctLucru, Denumire, Adresa, Telefon, E-mail, Comentarii.
Baza de date astfel obtinuta se afla in forma normala 3 si este compusa din cele doua tabele legate printr-un camp cheie. Pentru simplificarea codificarii datelor vom apela la facilitatea Microsoft Access de a construi automat un identificator de inregistrare pentru identificarea unica a acestora. Legatura dintre cele doua tabele o vom desemna cu ajutorul optiunii Relationships (meniul Tools sau cel contextual). Adaugam cele doua tabele, executam clic de mouse pe campul IdPunctLucru din tabela Angajati dupa care, mentinand butonul stang apasat, deplasam mouse-ul pe campul corespunzator din tabela PuncteLucru, eliberam butonul si apasam butonul Create.
Crearea tabelelor utilizand Table Wizard este simplificata de Microsoft Access, oferind o bogata colectie de proiecte de tabele orientate pe afaceri si pe probleme personale, prin programul de tip „vrajitor” Table Wizard
Dupa selectarea optiunii de creare a unui tabel cu ajutorul Table Wizard si trecerea prin pasii afisati, va rezulta un tabel al carui continut nu este populat cu date de intrare. De asemenea, Table Wizard sugereaza relatiile care ar trebui realizate intre tabelele create si tabelele existente deja in baza de date (exista si optiunea de creare a relatiilor sugerate).
Desi este un program complex si facil de utilizat, Table Wizard are anumite limite, neoferind programatorilor experimentati toate optiunile dorite. In acest caz ei vor apela la crearea tabelelor manual sau prin scrierea de cod sursa.
Crearea tabelelor utilizand Table Design reprezinta crearea manuala a tabelelor. Prin selectarea acestei optiuni se afiseaza numele campurilor si tipul datelor continute, asigurand si o coloana pentru descrierea optionala a campurilor tabelului.
Existenta panoului Field Properties este foarte importanta deoarece permite stabilirea de proprietati suplimentare pentru anumite campuri.
Pentru ca un tabel creat in acest mod sa fie perfect functional, proiectarea lui va parcurge urmatoarele etape:
Determinarea informatiilor care vor fi continute in tabel
In functie de scopul pentru care este proiectat tabelul respectiv, el se va popula cu datele corespunzatoare:
Alocarea informatiilor in campuri. Fiecarui tip de informatii stabilit in etapa anterioara ii va corespunde un anumit tip de date care determina tipul campului. Microsoft Access pune la dispozitia utilizatorului urmatoarele optiuni pentru tipul de date cu care se va incarca fiecare camp:
AutoNumber nu poate fi modificat manual, fiind de preferat a se folosi drept cheie primara a unui tabel. Desi este incrementat secvential in mod implicit, se poate stabili si o incrementare aleatoare;
Text este destinat informatiei de tip sir de caractere (ma-xim 255 caractere);
Lookup permite stocarea unei valori, dar afiseaza textul ce insoteste valoarea respectiva. Acest tip de camp poate fi legat de fapt de un alt tabel sau interogare, de unde isi extrage informatiile pe care le afiseaza sub forma unui combo box;
Number are mai multe subtipuri, determinate de proprietatea field size:
Byte cu interval valoric intre 0 si 255;
Integer cu interval valoric intre–32.768 si 32.767;
Long Integer cu interval valoric intre –2.147.483.648 si 2.147.483.647;
Single cu interval valoric intre–3, 4*1038 si 3, 4*1038;
Double cu interval valoric intre–1, 797*10308 si 1, 797*10308;
Decimal cu interval valoric intre - 22337203685477.5808 si 922337203685477.5808
Memo este utilizat pentru text de lungime ce depaseste capacitatea de 255 caractere a tipului text;
Obiecte OLE este tot un camp de capacitate mare;
Date/Time contine informatii de data si/sau timp;
Yes/No contine una din cele doua stari: yes/no, on/off, true/false.
Validarea datelor. Este o etapa foarte importanta deoarece in acest moment se stabilesc criteriile de validare a informatiilor ce vor fi introduse in baza de date. Microsoft Access pune la dispozitie in acest scop urmatoarele instrumente/proprietati:
Required si Allow ZeroLenght garanteaza introducerea de date in campurile de tip cheie si la cele in care aplicatia solicita existenta unor informatii diferite de null;
Input Mask este utila pentru stabilirea unui format al datelor introduse;
Rule si Validation Text verifica daca utilizatorul intro-duce informatii valide, deci respecta tipul de date si eventualele limite impuse (daca exista).
Crearea indecsilor. Desi Microsoft Access creeaza un index dupa cheia primara, pentru a spori viteza de cautare, se pot folosi si alti indecsi pentru campurile cu utilizare frecventa. Chiar daca utilizarea acestora mareste timpul de introducere a datelor datorita timpului necesar pentru actualizarea indecsilor suplimentari, procesele de cautare vor fi accelerate de existenta lor.
Desi cea mai frecventa modalitate de creare a tabelelor in Microsoft Access este cea manuala, uneori poate aparea necesitatea crearii unui tabel in mod dinamic, printr-un program. Microsoft Access permite folosirea atat a noilor tehnici ActiveX Data Objects(ADO), cat si a celor deja traditionale Data Microsoft Access Objects. Pasii urmariti la crearea unui tabel sunt aceiasi ca in cazul crearii manuale; in functie de modul de generare a tabelului, pot sa apara si anumite cerinte suplimentare.
Programul de declarare a coloanelor tabelului PuncteLucru si stabilirea cheii primare pe campul IdPunctLucru folosind bibliotecile ADO si containerele de tip catalog.
4. Interogari
O interogare (query) este o definitie a datelor care se extrag: care campuri din tabele, din ce tabele, criteriile de selectie, ordinea de sortare. Structura unei interogari indica datele care se vor extrage, Microsoft Access oferind urmatoarele posibilitati:
selectarea anumitor campuri mai semnificative din inregistra-rile unei tabele;
selectarea inregistrarilor care satisfac anumite criterii;
sortarea inregistrarilor intr-o ordine precizata de utilizator;
interogarea mai multor tabele; o interogare permite combinarea inregistrarilor din mai multe tabele si afisarea rezultatului intr-un singur tabel de date;
interogarea altor baze de date existente in sisteme de gestiune a bazelor de date cum sunt FoxPro, Paradox, dBase, Btrieve, Microsoft SQL Server;
crearea de campuri pentru afisarea rezultatelor unor calcule;
crearea de rapoarte, formulare sau alte interogari.
Odata construita, o interogare poate fi sursa de inregistrari pentru crearea unui formular sau a unui raport. De fiecare data cand se deschide formularul sau se imprima raportul, interogarea folosita drept sursa de date extrage din tabela informatii actualizate. De asemenea, se pot intro-duce sau modifica date fie direct in tabelul de date a interogarii, fie in formularul creat pe baza acesteia.
Interogarile afiseaza datele continute in cel mult 16 tabele. Cu ajutorul lor se poate indica modul in care sa fie prezentate datele, alegand tabelele care contin interogarea si cel mult 255 de campuri ale acestora.
In Microsoft Access se pot crea urmatoarele tipuri de intero-gari: interogari de selectie, interogari de actiune, interogari incrucisate si interogari parametrice.
Interogarile de selectie extrag informatii din unul sau mai multe tabele si le afiseaza sub forma de lista. Sunt cel mai usor de creat si au avantajul ca pot afisa un numar redus de date dintr-un tabel de mare capacitate (datele care indeplinesc conditiile specificate). Ele permit si modificarea rezultatului afisat, modificare ce va fi vazuta si in tabelul sursa. De asemenea, permit si folosirea de parametri, cum este reuniunea de campuri din tabele intre care nu exista nici o legatura.
Interogarile de actiune creeaza un nou tabel in baza de date sau realizeaza modificari majore ale unui tabel existent. In general, toate interogarile de actiune pot fi realizate pe baza unei interogari de selectie. Ele permit adaugarea, modificarea sau stergerea de inregistrari intr-un tabel. Exista patru tipuri de interogari de actiune:
interogari de generare a unui nou tabel din datele continute in setul de rezultate al interogarii;
interogari de adaugare a noi inregistrari intr-un tabel;
interogari de stergere a unor inregistrari dintr-un tabel;
interogari de actualizare a unor inregistrari dintr-un tabel, conform cu o conditie ce trebuie indeplinita.
Actiunile acestora sunt ireversibile asupra datelor din tabelele sursa, iar in cazul ultimelor trei dintre ele, trebuie urmarita pastrarea integritatii referentiale atunci cand prin intermediul lor se actioneaza asupra mai mul-tor tabele legate.
Interogarile incrucisate centralizeaza in formatul unei foi de calcul tabelar datele din unul sau mai multe tabele. Datele rezultate dupa executia unei astfel de interogari sunt prezentate intr-un format potrivit pentru analiza datelor si crearea de grafice.
Interogarile parametrice nu sunt un tip special de interogari, o functie parametru putand fi folosita pentru toate celelalte interogari prezentate mai sus; ele folosesc in mod repetat o interogare, efectuand modificari in criteriile de selectie.
Crearea interogarilor
Microsoft Access include patru modalitati de creare a unei interogari:
1. Automat (Query Wizard);
2. Manual (Query Design);
3. Comenzi SQL;
4. Prin program (bibliotecile ActiveX Data Objects, Data Microsoft Access Objects si obiectele QueryDef)
Crearea interogarilor utilizand Query Wizard, este posibila atat pentru interogarile de selectie cat si pentru interogarile incrucisate.
Simple Query Wizard este destinat pentru crearea de interogari de selectie in principiu dintr-un singur tabel, dar poate afisa date din doua sau mai multe tabele si interogari intre care exista sau nu legaturi directe. Printre optiunile puse la dispozitia utilizatorului sunt si cele de adunare/contorizare a datelor din campurile ce contin valori numerice. In ecranul din figura urmatoare. campurile selectate sunt din doua tabele legate direct. Rezultatul interogarii este reprezentat de lista tuturor angajatilor, identificati prin nume si prenume. Alaturi de fiecare angajat apare si denumirea departamentului in care acesta isi desfasoara activitatea.
Pentru interogarile incrucisate, Microsoft Access dispune de un program Wizard dedicat (Crosstab Query Wizard), care se poate accesa prin intermediul butonului New. In aceasta interogare s-au stabilit randurile, coloanele si functia de calcul pentru determinarea numarului de angajati care isi desfasoara activitatea in cadrul fiecarui departament. Crosstab Query Wizard este restrictionat de posibilitatea de a totaliza date doar intr-un singur tabel.
Alaturi de cele doua programe Wizard, Microsoft Access mai pune la dispozitie alte doua tipuri de astfel de programe deosebit de utile in intretinerea unei baze de date relationale: Find Duplicates Query Wizard si Find Unmatches Query Wizard care pot fi apelate prin exprimarea optiunii de creare a unei noi interogari, la selectarea butonului New.
Interogarea care gaseste duplicatele (Find Duplicates Query Wizard) localizeaza inregistrarile ce contin valorile duplicat dintr-un anumit camp. Este o interogare extrem de utila atat in gestionarea cresterii dimensiunii unui tabel, prin evitarea incarcarii inutile cu date duble, cat si pentru stabilirea pe parcurs a unui camp drept cheie primara, atunci cand inregistrarile duplicat nu permit acest lucru. In figura urmatoare este prezentat unul dintre ecranele de lucru al acestui program, in care s-a ales campul pentru care se doreste cautarea de duplicate.
Daca interogarea ce gaseste duplicatele este utila pentru elimina-rea inregistrarilor duble ca urmare a unor erori de introducere, cea care gaseste valorile nepotrivite localizeaza inregistrarile asociate care nu mai au o inregistrare principala corespondenta ca urmare a erorilor de sterge-re si care afecteaza integritatea referentiala.
Cele patru programe Wizard sunt extrem de utile si de facile in utilizare, dar destul de limitate pentru a face fata tuturor cerintelor unei baze de date de dimensiuni mari.
Crearea manuala a interogarilor se realizeaza prin intermediul optiuni Query Design care foloseste pentru interfata grafica Query by Example (QBE). Aceasta permite si utilizatorilor care nu stiu limbajul de programare QBE sa gaseasca si sa afiseze informatiile de care au nevoie.
Odata activata optiunea Query Design, Microsoft Access va considera implicit ca orice generare a unei noi interogari este o interogare de selectie. Transformarea tipului de interogare implicit se face prin selectarea tipului dorit din meniul Query.
Pentru a crea o noua interogare in modul Query Design, se vor parcurge urmatorii pasi:
Selectarea tabelelor din care se doresc a fi afisate/prelucrate datele;
Selectarea campurilor care se vor transforma in coloanele ta-belului rezultat al interogarii;
Stabilirea criteriilor de selectie si a campurilor asupra carora vor fi aplicate; se poate apela la un singur criteriu de selectie sau la mai multe criterii, aplicate fie unor campuri diferite, fie formand un criteriu compus aplicat aceluiasi camp;
Stabilirea parametrilor de selectie. Parametrii functioneaza pentru interogari asemanator criteriilor de selectie, cu deosebirea ca la fiecare executie trebuie specificata valoarea parametrului in functie de care se va realiza selectia;
Stabilirea tipului de sortare a datelor afisate ca rezultat si a campurilor asupra carora va actiona;
Specificarea formulei pentru campurile care sunt rezultatul unor operatii executate asupra unora dintre campurile deja existente. Acest lucru se poate face fie prin scrierea directa a formulei, fie prin apelarea la generatoarele de functii pentru calcule mai complicate sau care folosesc functii definite deja in Microsoft Access;
Alegerea tipului de interogare prin selectarea din meniul Query a uneia dintre optiunile: interogari de selectie, interogari incrucisate, de generare a unui tabel, de adaugare intr-un tabel, de stergere dintr-un tabel, de actualizare a unui tabel. In functie de optiunea aleasa, Microsoft Access modifica designul interogarii si cere informatii suplimentare astfel:
pentru generarea unui tabel – numele tabelului ce urmeaza a fi creat;
pentru adaugarea intr-un tabel – numele tabelului ce urmeaza a fi incarcat cu date, precum si campurile destinatie;
pentru actualizare – conditiile de actualizare si valoarea la care se doreste actualizarea;
pentru stergere – numele tabelului din care se va sterge si conditia de stergere.
Ca si in cazul tabelelor, Microsoft Access are capacitatea de a afisa in mod ierarhic doua interogari intre care exista o legatura. In acest fel, in cadrul rezultatului unei interogari de selectie, pot fi afisate sub forma de subtabel si date dintr-o alta interogare aflata intr-o relatie de tip parinte-copil cu interogarea initiala. In acest scop se foloseste din meniul View optiunea de proprietati ale interogarii, in cadrul carora se specifica interogarea cu care este legata cea curenta, precum si campurile prin care se realizeaza aceasta legatura.
Anterior, vom utiliza Query Design pentru a realiza o interogare care sa genereze denumirea tuturor punctelor de lucru in care isi desfasoara activitatea angajati avand numele Popescu. Pentru aceasta, in fereastra interogarii vom adauga cele doua tabele, Angajati si PuncteLucru, iar Microsoft Access va trasa automat legatura existenta intre campurile corespondente. Urmeaza sa adaugam campurile dorite (dublu clic), in cazul nostru Denumire si Nume, dupa care adaugam conditia de filtrare. Pentru aceasta, ne deplasam pe coloana campului Nume, linia Criteria, si introducem textul „Popescu”. De asemenea, vom scoate bifa de pe coloana campului Nume pentru ca acesta sa nu apara in cadrul rezultatelor interogarii.
Pentru a rula interogarea avem la dispozitie butonul din bara de instrumente pe care este desenat semnul exclamarii de culoare rosie sau, in mod echivalent, putem folosi optiunea Run a meniului Query.
Pentru salvarea interogarii sub numele PuncteLucruPopescu s-a folosit butonul Save. Dupa ce operatia de salvare s-a incheiat cu succes, interogarea nou creata poate fi accesata folosind fereastra bazei de date.
In mod asemanator, dorim sa realizam o interogare care sa genereze toti angajatii care au mai mult de doi copii. In fereastra Query Design vom adauga de data aceasta un singur tabel, Angajati. Campurile care vor fi adaugate sunt Nume, Prenume si NumarCopii. Pe linia Criteria a ultimului camp vom specifica conditia de filtrare >2. Putem utiliza linia Sort pentru a specifica modalitatea in care dorim sa se realizeze ordonarea inregistrarilor returnate de query. In cazul nostru am optat pentru ordonarea descendenta dupa nume a angajatilor. Interogarea va fi salvata sub numele AngajatiCuPeste2Copii.
Daca insa ne-ar interesa sa obtinem, cu ajutorul unei interogari, toti angajatii care sunt nascuti inainte de 11 decembrie 1976, atunci in coloana campului DataNastere, pe linia Criteria, va trebui specificata urmatoarea conditie de filtrare: < #11/12/1976#. In situatia in care dorim ca unul dintre campurile returnate sa fie denumit altfel, atunci va trebui ca in fereastra interogarii sa specificam noul nume inaintea campului dorit urmat de semnul
Crearea interogarilor utilizand comenzi SQL permite construirea directa a interogarilor pe baza unui limbaj specializat. Daca toate tipurile de interogari prezentate pot fi generate folosind QBE, exista interogari ce necesita folosirea unui instrument mai puternic pentru gestionarea acestora, instrument numit SQL (Structured Query Language).
SQL este un set standard de cuvinte din engleza folosite la descrierea unei interogari, fiind limbajul utilizat in mod obisnuit la gestionarea bazelor de date client/server, in care aplicatia de tip client genereaza instructiuni SQL prin care adauga, editeaza, sterge datele din aplicatia server a bazei de date.
SQL este un limbaj orientat pe seturi, fiind un limbaj de aplicatie pentru bazele de date relationale. Cuprinde sase categorii de comenzi prin care se creeaza si se gestioneaza interogarile:
comenzile Data Query Language sunt utilizate pentru extragerea datelor si pentru stabilirea modului de prezentare; prin-cipala comanda din acest set este comanda SELECT ;
comenzile Data Manipulation Language sunt utilizate pentru adaugarea, modificarea, stergerea datelor; includ comenzile INSERT, DELETE, UPDATE;
comenzile Transaction Processing Language sunt utilizare pentru procesarea tranzactiilor; includ comenzile BEGIN TRANSACTION, COMMIT, ROLLBACK;
comenzile Data Definition Language sunt utilizate pentru de-finirea si modificarea structurii tabelelor si a vizualizarilor;
comenzile Cursor Control Language sunt utilizate pentru controlul selectiei unui singur rand din setul de rezultate in vederea procesarii;
comenzile Data Control Language sunt utilizate pentru functii administrative ce acorda sau revoca privilegiile de utilizare a bazei de date; includ comenzile GRANT, REVOKE.
Intrebari pe marginea lucrarii
1. Realizati o baza de date a grupei dumneavoastra si creati o interogare simpla.
a)Adaugati inregistrari in baza de date, apoi stergeti inregistrari din ea.
b) Creati un formular simplu.
c) Cautati o inregistrare.
d) Adaugati, eliminati campuri dintr-o interogare.
e) Selectati si sortati datele dupa anumite criterii.
2. Creati doua tabele cu angajatii unei companii care sa se afle in relatia one-to-one. Prima sa contina codul de identificare angajat impreuna cu informatii personale despre acesta (data nasterii, studii, adresa …), iar cea de-a doua sa contina codul de identificare impreuna cu informatiile referitoare la statul de plata (salariu, vechime, zile concediu).
Studiati legaturile dintre tabele.
|