Sunteți pe pagina 1din 17

Unitatea de nvare

Utilizarea limbajului SQL n programul Access

Cuprins

1. Limbajul SQL n programul Access 2 1.1.1. Instruciunea SELECT..3 1.1.2. Instruciunea DELETE .5 1.1.3. Instruciunea INSERT INTO .7 1.1.4. Instruciunea UPDATE .9 1.2. Clauze ale limbajului SQL 10 1.2.1. Clauza SELECT .10 1.2.2. Clauza FROM 11 1.2.3 Clauza WHERE 12 1.2.4. Clauza ORDER BY 13 1.2.5. Clauza GROUP BY 13 1.2.6. Clauza HAVING .14 1.2.7. Operatorul UNION 14 1.3 Rezumat 16 2 ntrebri de autocontrol .16 3 Bibliografie/webografie ..16

Obiective:

SQL (Structured Query Language), este un limbaj de programare pentru lucrul cu seturi de evenimente i relaiile dintre acestea. Programele de baze de date relaionale, cum ar fi Microsoft Office Access, utilizeaz SQL pentru a lucra cu datele. n aceast unitate de nvare vor fi descrise o parte dintre posibilitile acestui limbaj pentru interogarea bazelor de date i adugarea, modificarea i tergerea datelor prin comenzi SQL.

Competene:

Dobndirea de deprinderi referitoare la utilizarea limbajului SQL n cadrul bazelor de date Microsoft Office Access. Se vor nsui utilizarea comenzilor: Select, From, Where, Order By, Group By, Having, Union.
1

1. Limbajul SQL n programul Access


1.1. Instruciuni ale limbajului SQL
Anumite interogri specifice limbajului SQL, nu pot fi create n grila de generare a interogrilor, ci trebuie sa fie scrise direct n modul SQL [8,12,15]. Este vorba de: interogrile directe ce permit operarea direct cu tabele n server; interogrile definiii de date ce permit crearea, tergerea sau modificarea structurilor tabelelor; interogrile Union ce permit regruparea cmpurilor de doua tabele (sau mai multe) n acelai cmp rezultat din interogare. Aceste interogri sunt foarte utile n fuzionarea nregistrrilor ce provin din tabele diferite. Se adaug anumite avantaje ca [5,6,11,12]: viteza de execuie mai bun, o instruciune Select este mai rapid dect parcurgerea secveniala a unui tabel; performan mai bun: n modul client/server, interogrile sunt compilate de SGBD care le optimizeaz performantele; ntreinere mai uoar, codul de instruciuni SQL este mai scurt, deci mai uor de citit; standardizare, limbajul SQL este standardul de interogare al bazelor de date relaionale .

Tab. 3.1. Descrierea instruciunii SELECT Clauz SQL SELECT FROM Funcia pe care o ndeplinete Listeaz cmpurile care conin date de interes. Listeaz tabelele care conin cmpurile listate n clauza SELECT. Specific criteriile de cmp ce trebuie ndeplinite de fiecare nregistrare pentru ca aceasta s fie inclus n rezultate. Specific modalitatea de sortare a rezultatelor. Obligatorie Da Da

WHERE ORDER BY GROUP BY

Nu

Nu

ntr-o instruciune SQL care conine Doar dac exist astfel funcii agregate, listeaz cmpurile care de cmpuri nu sunt rezumate n clauza SELECT. Nu

ntr-o instruciune SQL care conine funcii agregate, specific ce condiii se HAVING aplic la cmpurile care sunt rezumate n instruciunea SELECT.

O instruciune SQL are mai multe pri numite clauze. Fiecare clauz efectueaz o funcie pentru instruciunea SQL. Unele clauze sunt obligatorii ntr-o instruciune SQL. De exemplu pentru o instruciune SELECT avem urmtoarea caracterizare [21,23] tabelul 3.1. Caracterizarea clauzelor din limbajul SQL este fcut n paragraful urmtor 3.2. Prezentrile din paragrafele 1.1 i 2.2 se bazeaz pe documentaia firmei Microsoft, programul Access 2010 [2,11,12,15,23].
1.1.1. Instruciunea SELECT

O instruciune SELECT i cere motorului pentru baze de date Microsoft Access s returneze informaii din baza de date, ca un set de nregistrri. Sintaxa instruciunii SELECT are forma general [9,23]: SELECT [predicat] { * | tabel.* | [tabel.]cmp1 [AS alias1] [, [tabel.]cmp2 [AS alias2] [, ...]]} FROM expresie pentru tabele [IN baz de date extern] [WHERE... ] [GROUP BY... ] [HAVING... ] [ORDER BY... ] [WITH OWNERACCESS OPTION] Instruciunea SELECT are prile indicate n tabelul 3.2. Instruciunea SELECT nu modific datele din baza de date. SELECT este, de regul, primul cuvnt dintr-o instruciune SQL. Cele mai multe instruciuni SQL sunt instruciuni SELECT sau SELECT...INTO. Sintaxa minim a unei instruciuni SELECT este: SELECT cmpuri FROM tabel Se poate utiliza un asterisc (*) pentru a selecta toate cmpurile dintr-un tabel. Urmtorul exemplu selecteaz toate cmpurile din tabelul Instalaii: SELECT * FROM Instalaii; Dac un nume de cmp este inclus n mai multe tabele din clauza FROM, trebuie precedat de numele tabelului i de operatorul . (punct).

Exemplul din figura 3.1. arat utilizarea instruciunii select n tabelul instalaii pentru afiarea ID ului la instalaiile care pot fora la adncime mai mici sau egale cu 4000 m .

Tab. 3.2 Detalii referitoare la instruciunea SELECT Parte predicat Descriere Unul dintre urmtoarele predicate: ALL, DISTINCT, DISTINCTROW sau TOP. Predicatul se utilizeaz pentru a restriciona numrul de nregistrri care se returneaz. n cazul n care nu se specific niciunul, predicatul implicit este ALL. Specific faptul c se selecteaz toate cmpurile din tabelul sau tabelele specificate. Numele tabelului care conine cmpurile din care se selecteaz nregistrri. Numele cmpurilor care conin datele care dorii s fie regsite. Dac includei mai multe cmpuri, se vor regsi n ordinea listat. Numele care se vor utiliza ca anteturi de coloan n locul numelor originale ale coloanelor din tabel. Numele tabelului sau tabelelor care conin datele care dorii s fie regsite. Numele bazei de date externe care conine tabelele din expresia pentru tabele, n cazul n care nu se afl n baza de date curent.

* tabel cmp1, cmp2 alias1, alias2 expresie pentru tabele baz de date extern

SELECT ID FROM Instalatii Where [Adncimea maxim,m] <=4000;


b

c Fig. 3.1. Utilizarea instruciunii SELECT pe tabelul Instalaii.

Cnd se creeaz un obiect de tipul Set de nregistrri, Motorul pentru baze de date Microsoft Access utilizeaz numele de cmp din tabel ca nume pentru obiectul Cmp din obiectul set de nregistrri. Dac dorii un alt nume de cmp sau dac expresia utilizat pentru a genera cmpul nu produce un nume, utilizai cuvntul rezervat AS. n figura 3.2. Se reia exemplul precedent afind n loc de ID-ul instalaiei care poate fi ambiguu, SIMBOLIZAREA INSTALATIEI nume mult mai clar pentru utilizator.
1.1.2. Instruciunea DELETE

DELETE este util pentru a terge multe nregistrri. Sintaxa acestei instruciuni este DELETE [tabel.*] FROM tabel WHERE criteriu Instruciunea DELETE are aceste pri, tabelul 3.3: Tab. 3.3. Descrierea instruciunii DELETE Parte Descriere tabel Numele opional al tabelului din care se terg nregistrri. tabel Numele tabelului din care se terg nregistrri. criterii O expresie care determin nregistrrile care se terg. SELECT ID AS [SIMBOLIZAREA INSTALATIEI] FROM Instalatii Where [Adncimea maxim,m] <=4000 ;
a

b Fig. 3.2. Instruciunea SELECT cu ajutorul cuvntului rezervat (din limbajul SQL) AS.

Exemplu: n tabelul instalaii figura 3.3,a se vor terge nregistrrile cu adncimea maxim mai mare dect 6000m. Instruciunea de tergere n SQL este n figura 3.3,b. Apare un mesaj care ne avertizeaz c modificrile sunt ireversibile, figura 3.3,c. Dup tergere tabelul instalaii are aspectul din figura 3.3,d. Pentru a terge notaiile ters din tabel se apas pe butonul pe butonul Remprosptare, figura 3.3,e. Tab. 3.4. Descrierea instruciunii INSERT INTO Parte int cmp1, cmp2 Descriere Numele tabelului sau interogrii n care se adaug nregistrrile. Numele cmpurilor n care se adaug date, dac urmeaz un argument de tipul int, sau numele cmpurilor din care se obin datele, dac urmeaz un argument de tipul surs.

baz de date Calea ctre o baz de date extern. Pentru o descriere a cii, extern vedei clauza IN. surs expresie pentru tabele Numele tabelului sau interogrii din care se copiaz nregistrrile. Numele tabelului sau tabelelor din care se insereaz nregistrrile. Acest argument poate fi numele unui singur tabel sau un compus rezultat n urma unei operaiuni de tipul INNER JOIN , LEFT JOIN sau RIGHT sau a unei interogri salvate. Valorile care se vor insera n cmpurile specificate ale nregistrrii noi. Fiecare valoare se insereaz n cmpul care corespunde cu poziia valorii n list: valoarea1 se insereaz n cmpul1 din nregistrarea nou, valoarea2 n cmpul2, i aa mai departe. Valorile trebuie separate prin virgul, iar cmpurile de text trebuie ncadrate de apostrofuri (' ').

valoare1, valoare2

1.1.3. Instruciunea INSERT INTO

Adaug o nregistrare sau nregistrri multiple la un tabel. Aceasta este denumit interogare de adugare. Sintaxa instruciunii Insert Into Dac avem o interogare pentru adugarea de nregistrri multiple: INSERT INTO int [(cmp1[, cmp2[, ...]])] [IN baz de date extern] SELECT [surs.]cmp1[, cmp2[, ...] FROM expresie pentru tabele Dac avem o Interogare pentru adugarea unei singure nregistrri: INSERT INTO int [(cmp1[, cmp2[, ...]])] VALUES (valoare1[, valoare2[, ...]) Instruciunea INSERT INTO are elementele din tabelul 3.4.

DELETE Instalatii.[Adncimea maxim,m] FROM instalatii WHERE [Adncimea maxim,m ] >6000 ;


b

e Fig. 3.3. Utilizarea instruciunii de tergere DELETE ntr-o interogare.

Instruciunea INSERT INTO se poate utiliza pentru a aduga o singur nregistrare la un tabel utiliznd sintaxa interogrii pentru adugarea unei singure nregistrri, descris mai sus. n acest caz, codul specific numele i valoarea fiecrui cmp din nregistrare. Trebuie specificat fiecare cmp al nregistrrii cruia i se asociaz o valoare i valoarea acelui cmp. Dac nu se specific fiecare cmp, valoarea implicit, sau Null, se insereaz n coloanele care lipsesc. nregistrrile se adaug la sfritul tabelului. Exemplu: n tabelul Instalaii se mai adaug o nregistrare figura 3.4,a. nainte de scrierea noii nregistrri apare un mesaj prin care se indic permanena modificrii propuse. Dup modificare tabelul Instalaii arat ca n figura 3.4,c dup apsarea butonului de Remprosptare. INSERT INTO Instalatii (ID, [Forta la crlig,N ], [Adncimea maxim,m]) VALUES ('F500-4EC-004', 5000000, 8200)
; a

Fig. 3.4. Utilizarea instruciunii de inserare INSERT INTO ntr-o interogare. 8

De asemenea, INSERT INTO se poate utiliza pentru a aduga un set de nregistrri din alt tabel sau interogare, utiliznd clauza SELECT ... FROM, descris mai sus n sintaxa interogrilor pentru adugarea de nregistrri multiple. n acest caz, clauza SELECT se utilizeaz pentru specificarea cmpurilor care se adaug la tabelul int specificat. Tabelul surs sau int poate specifica un tabel sau o interogare. Dac se specific o interogare, Motorul pentru baze de date Microsoft Access adaug nregistrri la toate tabelele specificate de interogare. INSERT INTO este opional, dar, atunci cnd se include, preced instruciunea SELECT. Dac tabelul destinaie conine o cheie primar, asigurai-v c adugai valori unice, non-Null la cmpul sau cmpurile de tip cheie primar; n caz contrar, Motorul pentru baze de date Microsoft Access nu va aduga nregistrrile.
1.1.4. Instruciunea UPDATE

Creeaz o interogare de actualizare care modific valorile din cmpurile unui tabel specificat, n funcie de criterii specificate. Sintaxa instruciunii UPDATE UPDATE tabel SET valoarea nou WHERE criterii; Instruciunea UPDATE are aceste pri tabelul 3.5: Tab. 3.5. Elementele instruciunii UPDATE Parte tabel valoare nou criterii Descriere Numele tabelului care conine datele care dorii s se modifice. O expresie care determin valoarea care se insereaz ntr-un anumit cmp din nregistrrile actualizate. O expresie care determin nregistrrile care se actualizeaz. Se actualizeaz doar nregistrrile care satisfac expresia.

UPDATE este util mai ales dac dorii s modificai multe nregistrri sau dac nregistrrile pe care dorii s le modificai sunt n tabele multiple . Se pot modifica mai multe cmpuri n acelai timp. Urmtorul exemplu mrete valorile din Adncimea maxim cu 500 m i valorile din Fora la crlig cu 100 000 N, figura 3.4.

UPDATE Instalatii SET [Adncimea maxim,m] = [Adncimea maxim,m] +500, [Forta la crlig,N ]= [Forta la crlig,N ]+100000 ;
a

c Fig. 3.4. Utilizarea instruciunii de inserare INSERT INTO ntr-o interogare.

1.2. Clauze ale limbajului SQL


1.2.1. Clauza SELECT

ntr-o instruciune SELECT, clauza SELECT listeaz cmpurile care conin datele pe care dorii s le utilizai. Exemplu clauza SELECT SELECT [Fora la crlig,N], ID Clauza SELECT cuprinde un operator (SELECT) urmat de doi identificatori ([Fora la crlig,N] i ID). Utilizm paranteze drepte pentru a ncadra numele unui cmp dintr-o clauz SELECT. Dac numele nu conine spaii sau caractere speciale (cum ar fi semne de punctuaie), parantezele drepte sunt opionale. O clauz SELECT nu trebuie s menioneze ce tabele conin cmpurile i nu poate specifica nicio condiie pe care s o ndeplineasc datele de inclus. Clauza SELECT apare ntotdeauna n faa clauzei FROM ntr-o instruciune SELECT. Dac dorim s includem toate cmpurile dintr-o surs de date, listm toate cmpurile individual n clauza SELECT sau utilizm un metacaracter asterisc (*). Cnd utilizai un asterisc, Access determin atunci cnd se execut interogarea ce cmpuri conine

10

sursa de date i include toate cmpurile n interogare. Acest lucru v ajut s v asigurai c interogarea rmne actualizat dac se adaug cmpuri noi la sursa de date. ntr-o instruciune SQL, avem posibilitatea s utilizai asteriscul cu una sau mai multe surse de date. Dac utilizm asteriscul i exist mai multe surse de date, trebuie s includem numele sursei de date mpreun cu asteriscul, pentru ca Access s poat determina din ce surs de date s includ toate cmpurile . De exemplu, s presupunem c dorim s selectm toate cmpurile din tabelul Instalaii, dar doar Numrul de viteze din tabelul Troliu atunci clauza SELECT va arta astfel: SELECT Instalaii.*, [Troliu].[Numrul de viteze] Dac tim c instruciunea va selecta date redundante i am prefera mai degrab s vedei valori distincte, utilizm cuvntul cheie DISTINCT n clauza SELECT. Dac ne intereseaz ce adncimi maxime de foraj exist ntr-un lot de instalaii folosim cuvntul cheie DISTINCT SELECT DISTINCT [ Adncimea maxim,m].
1.2.2. Clauza FROM

ntr-o instruciune SELECT, clauza FROM specific tabelele sau interogrile care conin datele pe care clauza SELECT le va utiliza.
Structur clauza FROM

FROM Troliu Aceasta este clauza FROM. Aceasta cuprinde un operator (FROM) urmat de un identificator (Troliu) al tabelului n care cutm informaia. Utilizm paranteze drepte pentru a ncadra numele unui cmp. Dac numele nu conine spaii sau caractere speciale (cum ar fi semne de punctuaie), parantezele drepte sunt opionale. Dac numele conine spaii sau caractere speciale, trebuie s utilizm parantezele; de exemplu dac tabelul Troliu s-ar numi Troliu de foraj atunci sintaxa clauzei FROM este: FROM [Troliu de foraj] .

11

1.2.3 Clauza WHERE

Cnd dorim s utilizm date pentru a limita numrul de nregistrri returnate ntr-o interogare, utilizm criterii de interogare n clauza WHERE a unei instruciuni SELECT. Un criteriu de interogare se aseamn cu o formul i este un ir ce poate cuprinde referine de cmp, operatori i constante. Criteriile de interogare sunt un tip de expresie. clauza WHERE nu este un element obligatoriu al unei instruciuni SELECT. Urmtorul tabel 3.6 afieaz cteva exemple de criterii i explic modul n care funcioneaz. Tab. 3.6. Exemple de criterii de interogare Criterii >25 and <50 Descriere Criteriul se aplic unui cmp de tip Numr, cum ar fi Pre sau UnitinStoc. Se vor include numai acele nregistrri unde cmpurile conin o valoare mai mare dect 25 i mai mic dect 50. Acest criteriu se aplic unui cmp Dat/Or, cum ar fi DataNaterii. Se includ n rezultatele interogrii numai nregistrrile unde numrul de ani dintre data de natere a persoanei i data de azi este mai mare de 30. Acest criteriu poate fi aplicat oricrui tip de cmp pentru a afia nregistrrile unde valoarea cmpului este nul.

DateDiff ("yyyy", [DataNaterii], Date()) > 30

Is Null

Structur clauza WHERE O clauz WHERE are urmtoarea sintax de baz: WHERE cmp = criteriu Exemplu: WHERE [Fora n captul activ,N]=1000000 n aceast clauz WHERE avem operatorul (WHERE) urmat de o expresie ([Fora n captul activ,N]=1000000). Uneori, dorim s combinm surse de date n baza unor cmpuri care au date potrivite, dar care au tipuri diferite de date. Pentru a combina date din dou surse de date pe baza valorilor din cmpurile care au tipuri de

12

date diferite, crem o clauz WHERE care utilizeaz un cmp drept criteriu pentru cellalt cmp, utiliznd cuvntul cheie LIKE. De exemplu, s presupunem c dorim s utilizm datele din tabel1 i tabel2, dar doar atunci cnd datele din cmp1 (un cmp text din tabel1) se potrivesc cu datele din cmp2 (un cmp numeric din tabel2). Clauza WHERE ar arta astfel: WHERE cmp1 LIKE cmp2
1.2.4. Clauza ORDER BY

La fel ca Microsoft Office Excel, Access v permite s sortai rezultatele interogrii ntr-o foaie de date. De asemenea, este posibil s specificai n interogare cum dorii s sortai rezultatele atunci cnd se execut interogarea, utiliznd o clauz ORDER BY. Dac utilizai clauza ORDER BY, aceasta este ultima clauz din instruciunea SQL. O clauz ORDER BY conine o list de cmpuri pe care dorii s le utilizai pentru sortare, n aceeai ordine n care aplicai operaiunile de sortare. De exemplu, s presupunem c dorii ca rezultatele s fie filtrate mai nti dup valoarea cmpului Adncime maxim,m n ordine descresctoare i dac exist nregistrri cu aceeai valoare pentru Adncime maxim,m sortate apoi dup valorile din cmpul Fora la crlig, N n ordine cresctoare. C n mod implicit, Access sorteaz valorile n ordine cresctoare (A-Z, de la mic la mare). Utilizai cuvntul cheie DESC pentru a sorta n schimb valorile n ordine descresctoare. Clauza ORDER BY poate arta astfel: ORDER BY [Adncime maxim,m]DESC, [Fora la crlig, N]
1.2.5. Clauza GROUP BY

Clauza GROUP BY corespunde Totalului interogrilor Access i permite regruparea datelor ntr-unul sau mai multe cmpuri. n principal, clauza este folosita pentru executarea funciilor de agregare SQL: Sum (suma), Count (calcul), Avg (medie). Exemplu: Aceasta interogare returneaz numrul comenzilor lansate de client.

13

SELECT Clienti.Cli_Societate, Count(Comenzi.Cde_DateCde) AS NbComenzi FROM Clienti LEFT JOIN Comenzi ON Clienti.Cli_CodeCli = Comenzi.Cde_CodeCli
GROUP BY Clienti.Cli_Societate 1.2.6. Clauza HAVING

Specific nregistrrile regrupate ce trebuie afiate ntr-o instruciune SELECT dotata cu o clauza GROUP BY. Odat ce regruparea este efectuata se afieaz lista de cmpuri a clauzei GROUP BY si sunt selectate doar nregistrrile care respecta condiia specificata n clauza HAVING. Exemplu: Aceasta interogare extrage comenzile ale cror total este mai mare de 2 000 000. SELECT Comenzi.Cde_NumCde, Sum([Cde_Pret]*[Cde_Buc]) AS TotalCde, Commandes.Cde_DateCde FROM Comenzi INNER JOIN [Detalii Comenzi] ON Comenzi.Cde_NumCde = [Detalii Comenzi].Cde_NumCde GROUP BY Comenzi.Cde_NumCde, Comenzi.Cde_DateCde
HAVING (Sum(Cde_Pret*Cde_Buc)> 2 000 000) 1.2.7. Operatorul UNION

Cnd dorim s examinai toate datele returnate de mai multe interogri de selectare similare, ca pe un set combinat, utilizai operatorul UNION. Operatorul UNION v permite s combinai dou instruciuni SELECT ntr-una singur. Instruciunile SELECT pe care le combinai trebuie s aib acelai numr de cmpuri de ieire, n aceeai ordine i cu aceleai tipuri de date sau cu tipuri de date compatibile. Cnd executai interogarea de uniune, datele din fiecare set de cmpuri corespunztoare sunt combinate ntr-un singur cmp de ieire, astfel nct ieirea de interogare s aib acelai numr de cmpuri ca fiecare dintre enunurile SELECT. n scopul efecturii unei interogri de uniune, tipurile de date Numr i Text sunt compatibile. Cnd utilizm operatorul UNION, este posibil, de asemenea, s specificm dac rezultatele interogrii s includ rnduri duble, dac exist, utiliznd cuvntul cheie ALL pentru o interogare de uniune arat astfel:
14

. Sintaxa SQL de baz

[TABLE] query1 UNION [ALL] [TABLE] query2 [UNION [ALL] [TABLE] queryn [ ]] Operatorul UNION are prile: Partea Descriere query1- O instruciune SELECT , numele unei interogri stocate, sau n numele unui tabel precedat de cuvntul cheie TABLE.

TABLE [Instalatii_1] UNION ALL SELECT * FROM Instalatii WHERE [Adncimea maxim,m] > 5000;
c

d Fig. 3.5. Utilizarea clauzei UNION.

De exemplu, am construit un alt tabel Instalaii_1 cu structura din figura 3.5,a. El se va uni cu tabelul Instalatii figura 3.5,b dar numai cu nregistrrile la care Adncimea maxim,m > 5000. Rezultatele interogrii
15

vor include rnduri duble, dac exist, utilizm cuvntul cheie ALL n instruciunea SQL figura 3.5,c. Rezultatul se vede n noul tabel din figura 3.5,d.

1.3 Rezumat
SQL (Structured Query Language), este un limbaj de programare pentru lucrul cu seturi de evenimente i relaiile dintre acestea. Programele de baze de date relaionale, cum ar fi Microsoft Office Access, utilizeaz SQL pentru a lucra cu datele. Anumite interogri specifice limbajului SQL, nu pot fi create n grila de generare a interogrilor, ci trebuie sa fie scrise direct n modul SQL. O instruciune SQL are mai multe pri numite clauze. Fiecare clauz efectueaz o funcie pentru instruciunea SQL. Se recomand parcurgerea materialelor bibliografice pentru fixarea competenelor din cadrul acestei uniti de nvare [1-3,10,18,19,21].

Explicaii suplimentare la clas

2 ntrebri de autocontrol
Explicai i exemplificai: a. Instruciunea Select b. Instruciunea Update c. Instruciunea Delete d. Instruciunea Insert Into

3 Bibliografie/webografie
1. Connoly T., Strachan A. Database Systems A practical Approach to Design, Implementation and Management, Second Edition, Addison Wesley Limited, 2002. 2. Connoly T., Strachan A. Database Systems A practical Approach to Design, Implementation and Management, Second Edition, Addison Wesley Limited, 2002. 3. Constantinescu C. Baze de date. Universitatea din

16

4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.

Craiova, 2007. Darwen H Exercise Book for An introduction to Relational Database Theory, Ventus Publishing ApS UK , 2011. Darwen H. An introduction to Relational Database Theory. Ventus Publishing ApS UK , 2010. Doro I. Baze de date. Editura Cibernetic MC, Bucureti , 2010. Fotache M. Proiectarea bazelor de date. Normalizare i post normalizare. Implementri SQL i Oracle, Ed. Polirom, Iai , 2005. Fusaru D., Gherasim Z., Andronic, M. Bra A. Stroe, P. Aplicaii economice n Visual Basic i Acces, Ed. Fundaiei Romnia de mine, Bucureti, 2003. Gavot M. Baze de date. Editura SNSPA - Facultatea de Comunicare i Relaii Publice: Bucureti, 2001. Garsia Molina H., Ullman H., Wiondom J. Database Systems. The Complete Book. Pretience Hall, Upper Saddle Riner, 2002. Georgescu C., Georgescu M. Baze de date relaionale i multidimensionale, Ed. did. i ped. RA, Bucureti, 2005. Giulvezean C., Mircea G., Trnveanu D., Margea C. Baze de date, Ed. Univ. de Vest, Timioara 2009. Lungu I. Baze de date Oracle, Limbajul SQL, Editura ASE, Bucureti , 2005. Lungu I., Velicanu M., Botha Iuliana, Data Base Systems Presents and Future, Informatica Economic, vol. 13., nr. 1/2009. Nechita E., Crian G.C. Baze de date. Ed. Univ. din Bacu, 2008. Petrescu M., Operaiuni n modelul relaional. Introducere n algebra relaional. Curs Univ. Politehnica Bucureti, http://www.bazededate.org. Popescu I., Modelarea bazelor de date, Ed. Tehnic, Bucureti, 2001. Seyed M. M. Tahaghoghi, Hugh E. W., Learning MySQL, OREily Media Inc., 2007. Sheldon R., Moes G. Begining MySQL, Wiley Publishing Inc., 2005. Trandafir R. , Nistorescu M.S. Bazele informaticii i Limbaje de programare Baze de date relaionale, Univ. Tehnic de Construcii Bucureti, 2007. Tudor N.L. Sisteme informatice i gestiunea bazelor de date, Ed. Univ. din Ploieti, 2007. ***. Oracle Database SQL Language Reference 11g Release 1 (11.1), http://docs.oracle.com /cd/B28359_01/server.111/b28286/toc.htm. ***. Office.microsoft.com - Ajutor i asisten. Microsoft Access 2010.

17

S-ar putea să vă placă și