Culegere de probleme Åi exemple la Baze de date
Culegere de probleme Åi exemple la Baze de date
Culegere de probleme Åi exemple la Baze de date
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Ministerul Educaţiei, Tineretului şi Sportului alRepublicii MoldovaUniversitatea <strong>de</strong> Stat “A. Russo” din BălţiOCTAVIAN COZNIUC<strong>Culegere</strong> <strong>de</strong> <strong>probleme</strong> şi <strong>exemple</strong> <strong>la</strong>BAZE DE DATEBălţi, 2006
CZU: 004.655.3Discutată <strong>la</strong> şedinţa Catedrei Electronică şi InformaticăProcesul verbal nr. 6 din 02.06.2006Discutată <strong>la</strong> şedinţa Consiliului Facultăţii Tehnică,Fizică, Matematică şi InformaticăProcesul verbal nr. 6 din 22.06.2006Autor: asistent universitar, magistru Octavian COZNIUCEd. SRL „PrimexCom”Recenzenţi:Nona DEINEGOGheorghe CURBET© Universiatea <strong>de</strong> Stat „Alecu Russo”, Octavian Cozniuc, 20062
CUPRINSULPREFAŢĂ..................................................................................4DESCRIEREA BAZEI DE DATE MARKETING...................5Tabelul Oficii.................................................................5Tabelul Companii...........................................................6Tabelul Angajaţi.............................................................6Tabelul Produse..............................................................7Tabelul Tranzacţii..........................................................7PROBLEME..............................................................................8Selectarea <strong>date</strong>lor...........................................................8Actualizarea <strong>date</strong>lor.....................................................18Parametrizarea interogărilor.........................................21LIMBAJUL SQL.....................................................................22Introducere...................................................................22Instrucţiunea <strong>de</strong> selecţie...............................................22Instrucţiunea <strong>de</strong> ştergere..............................................28Instrucţiunea <strong>de</strong> adăugare.............................................29Instrucţiunea <strong>de</strong> modificare..........................................30Instrucţiunea <strong>de</strong> selecţie inclusă...................................31Parametrizarea interogărilor.........................................32RĂSPUNSURI.........................................................................34ANEXĂ....................................................................................63BIBLIOGRAFIE......................................................................683
PREFAŢĂO dată cu evoluţia societăţii umane, informaţia a crescutin dimensiune. In prezent se pune problema, nu a stocării<strong>date</strong>lor, ci a regăsirii informaţiei necesare şi cu ea rapiditateaobţinerii rezultatului dorit. Rezolvarea acestei <strong>probleme</strong> este<strong>de</strong>terminată <strong>de</strong>:folosirea unui program specializat in prelucrareainformaţiei a unei baze <strong>de</strong> <strong>date</strong> concrete, care estee<strong>la</strong>borat <strong>de</strong> un programator;cunoaşterea limbajului SQL <strong>de</strong> către utilizator.Programele <strong>de</strong>stinate prelucrării <strong>date</strong>lor unei baze <strong>de</strong> <strong>date</strong>concrete sunt re<strong>la</strong>tiv scumpe şi, prin urmare, nu orice utilizatorîşi poate permite aşa ceva. Din cele expuse se poate afirma, căcunoaşterea limbajului SQL este cea mai optimală soluţie a<strong>probleme</strong>i menţionate.Problemele prezentate in lucrare pot fi rezolvate in oricesistem <strong>de</strong> gestiune a bazelor <strong>de</strong> <strong>date</strong> (SGBD) actual.Problemele sunt orientate spre baza <strong>de</strong> <strong>date</strong> Marketing, careeste o bază <strong>de</strong> <strong>date</strong> mo<strong>de</strong>l şi conţine informaţii <strong>de</strong>spre:produsele, clienţii, oficiile, angajaţii şi vânzările unei firmecomerciale.Lucrarea se adresează cititorilor care sunt oarecumfamiliarizaţi cu problematica programării calcu<strong>la</strong>toarelor şi cunoţiunile <strong>de</strong> bază ale informaticii teoretice. Ea poate servi camaterial didactic liceiştilor, stu<strong>de</strong>nţilor şi profesorilorspecializaţi în informatică, economie, baze <strong>de</strong> <strong>date</strong>, ş. a.Autorul mulţumeşte colegilor <strong>de</strong> catedră pentruobservaţiile şi sugestiile competente, care au contribuit <strong>la</strong>realizarea acestei lucrări.4
DESCRIEREA BAZEI DE DATE MARKETINGBaza <strong>de</strong> <strong>date</strong> Marketing este o bază <strong>de</strong> <strong>date</strong> ce conţineinformaţii <strong>de</strong>spre oficiile, produsele, angajaţii, clienţii şitranzacţiile <strong>de</strong> vânzare a unei intreprin<strong>de</strong>ri. Pentru a stoca toatăinformaţia sus numită în calcu<strong>la</strong>tor, se va folosi mo<strong>de</strong>lulre<strong>la</strong>ţional <strong>de</strong> reprezentare a <strong>date</strong>lor. Acest mo<strong>de</strong>l păstrează<strong>date</strong>le în formă <strong>de</strong> unu sau mai multe tabele cu re<strong>la</strong>ţii dintreele. Tabelele bazei <strong>de</strong> <strong>date</strong> Marketing sunt in a V-a formănormală şi în figura 1 este prezentat mo<strong>de</strong>lul re<strong>la</strong>ţional al bazei<strong>de</strong> <strong>date</strong> Marketing.Fig. 1. Mo<strong>de</strong>lul re<strong>la</strong>ţional al BD MarketingDin figura 1 se ve<strong>de</strong>, că baza <strong>de</strong> <strong>date</strong> este alcătuită din 5tabele cu titlurile: Oficii, Angajati, Tranzactii, Companii şiProduse.Tabelul OficiiTabelul Oficii conţine informaţii <strong>de</strong>spre toate oficiilefirmei şi este alcătuit din următoarele 4 câmpuri:Cod-oficiu <strong>de</strong> tip Text cu dimensiunea 2simboluri şi este cheie primară;Localitatea <strong>de</strong> tip Text cu dimensiunea 15 simboluri;5
6Regiunea <strong>de</strong> tip Text cu dimensiunea 6simboluri;Codul managerului <strong>de</strong> tip Text cu dimensiunea3 simboluri şi este cheie externă.Conţinutul entităţii Oficii este prezentat in anexă.Tabelul CompaniiTabelul Companii conţine informaţii <strong>de</strong>spre toatecompaniile ce co<strong>la</strong>borează cu firma respectivă şi este alcătuitdin următoarele 4 câmpuri:Cod-companie <strong>de</strong> tip Text cu dimensiunea 2simboluri şi este cheie primară;Compania <strong>de</strong> tip Text cu dimensiunea 13simboluri;Reprezentantul companie <strong>de</strong> tip Text cudimensiunea 3 simboluri şi este cheie externă;Datoria <strong>de</strong> tip Currency cu formatul euro.Conţinutul entităţii Companii este prezentat in anexă.Tabelul AngajaţiTabelul Angajati conţine informaţii <strong>de</strong>spre toţi angajaţiifirmei respective şi este alcătuit din următoarele 8 campuri:Cod-angajat <strong>de</strong> tip Text cu dimensiunea 3simboluri şi este cheie primară;Nume <strong>de</strong> tip Text cu dimensiunea 15 simboluri;Prenume <strong>de</strong> tip Text cu dimensiunea 15simboluri;Virsta <strong>de</strong> tip Number cu formatul număr întreg;Functia <strong>de</strong> tip Text cu dimensiunea 20simboluri;Codul oficiului <strong>de</strong> tip Text cu dimensiunea 2simboluri şi este cheie externă;
Data angajarii <strong>de</strong> tip Date/Time cu formatuldată scurtă;Suma p<strong>la</strong>nificata <strong>de</strong> tip Currency cu formatuleuro.Conţinutul entităţii Angajaţi este prezentat în anexă.Tabelul ProduseTabelul Produse conţine informaţii <strong>de</strong>spre produseleoferite <strong>de</strong> firmă dată şi este alcătuit din următoarele 4 campuri:Cod-produs <strong>de</strong> tip AutoNumber şi este cheieprimară;Descriere <strong>de</strong> tip Text cu dimensiunea 40simboluri;Pret <strong>de</strong> tip Currency cu formatul euro;Exist <strong>de</strong> tip Yes/No.Conţinutul entităţii Produse este prezentat in anexă.Tabelul TranzacţiiTabelul Tranzactii conţine informaţii <strong>de</strong>spre toatetranzacţiile realizate în cadrul firmei respective şi este alcătuitdin următoarele 5 campuri:Data comenzii <strong>de</strong> tip Date/Time cu formatuldată scurtă;Codul clientului <strong>de</strong> tip Text cu dimensiunea 2simboluri şi este cheie externă;Codul vinzatorului <strong>de</strong> tip Text cu dimensiunea 3simboluri şi este cheie externă;Codul produsului <strong>de</strong> tip Number cu formatulnumăr întreg şi este cheie externă;Cantitatea <strong>de</strong> tip Number cu formatul numărintreg.Conţinutul entităţii Tranzacţii este prezentat in anexă7
PROBLEMESelectarea <strong>date</strong>lor1. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numirea tuturorcompaniilor.2. Proiectaţi o interogare, ce ar afişa localitatea şiregiunea tuturor oficiilor.3. Proiectaţi o interogare, ce ar afişa conţinutul tuturorcampurilor tabelului oficii.4. Proiectaţi o interogare, ce ar afişa conţinutul tuturorcampurilor tabelului produse.5. Proiectaţi o interogare, ce ar afişa: codul, numele,prenumele şi vârsta tuturor angajaţilor.6. Proiectaţi o interogare, ce ar afişa conţinutul tuturorcampurilor tabelului companii.7. Proiectaţi o interogare, ce ar afişa: codul, numele,prenumele tuturor angajaţilor.8. Proiectaţi o interogare, ce ar afişa codul şi<strong>de</strong>numirea tuturor companiilor.9. Proiectaţi o interogare, ce ar afişa: codul, numele,prenumele, funcţia şi vârsta tuturor angajaţilor.10. Proiectaţi o interogare, ce ar afişa conţinutulcâmpurilor localitatea şi regiunea cu titlurile respective:„Localitatea oficiului” şi „Regiunea oficiului”.8
11. Proiectaţi o interogare, ce ar afişa: codul, numele,prenumele tuturor angajaţilor cu titlurile câmpurilor: „Codpersonal” pentru codul angajatului, „Numele angajatului”pentru numele angajatului şi „Prenumele angajatului” pentruprenumele angajatului.12. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor şi datoria lor în ordinea alfabetică după <strong>de</strong>numireacompaniei.13. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi funcţia angajaţilor în ordinea alfabetică dupănume şi prenume.14. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor şi datoria lor în ordinea <strong>de</strong>screscătoare dupădatorie.15. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia celor mai tineri 10 angajaţi.16. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia celor mai vârstnici 10 angajaţi.17. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia a 10 angajaţi cu o vechime mai mare inmuncă.18. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniei cu cea mai mare datorie.Proiectaţi o interogare, ce ar afişa: numele, prenumele, codulpersonal şi funcţia celui mai tânăr angajat.9
19. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea şipreţul tuturor produselor ce există <strong>la</strong> <strong>de</strong>pozit.20. Proiectaţi o interogare, ce ar afişa localităţileoficiilor regiunii <strong>de</strong> nord.21. Proiectaţi o interogare, ce ar afişa localităţileoficiilor regiunii <strong>de</strong> sud.22. Proiectaţi o interogare, ce ar afişa localităţileoficiilor regiunii <strong>de</strong> centru.23. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor ce au datorii mai mari ca 10 000 euro.24. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor ce au datorii mai mici ca 10 000 euro.25. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor ce au datorii nu mai mici ca 10 000 euro.26. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor ce au datorii nu mai mari ca 10 000 euro.27. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor ce nu au datorii.28. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia angajaţilor, cărora nu li s-a p<strong>la</strong>nificat nimic.29. Proiectaţi o interogare, ce ar afişa: numele,prenumele, vârsta şi funcţia angajaţilor, cărora li s–a p<strong>la</strong>nificatmai mult <strong>de</strong> 10 000 euro.10
30. Proiectaţi o interogare, ce ar afişa localităţileoficiilor regiunii <strong>de</strong> nord sau sud.31. Proiectaţi o interogare, ce ar afişa localităţileoficiilor regiunii <strong>de</strong> nord sau centru.32. Proiectaţi o interogare, ce ar afişa localităţileoficiilor regiunii <strong>de</strong> centru sau sud.33. Proiectaţi o interogare, ce ar afişa: numele,prenumele angajaţilor a căror nume incepe cu litera „v”.34. Proiectaţi o interogare, ce ar afişa: numele,prenumele angajaţilor a căror nume se sfârşeşte cu litera „a”.35. Proiectaţi o interogare, ce ar afişa: numele,prenumele angajaţilor a căror nume conţine litera „o”.36. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi vârsta celui mai tânăr angajat, a cărui numeincepe cu litera „g”.37. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia angajaţilor, a căror nume incepe cu literele„gr” în ordinea alfabetică după nume şi prenume.38. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>angajaţi.39. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>companii, ce nu au datorii.Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong> companii ce audatorii mai mici ca 10 000 euro.11
40. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>contabili.41. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>manageri.42. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>reprezentanţi.43. Proiectaţi o interogare, ce ar afişa suma datoriilortuturor companiilor.44. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai scump produs.45. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai ieftin produs.46. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai scump produs, ce există <strong>la</strong> <strong>de</strong>pozit.47. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai ieftin produs, ce exista <strong>la</strong> <strong>de</strong>pozit.48. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai scump produs, ce nu există <strong>la</strong> <strong>de</strong>pozit.49. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai ieftin produs, ce nu există <strong>la</strong> <strong>de</strong>pozit.50. Proiectaţi o interogare, ce ar afişa regiunea şinumărul <strong>de</strong> oficii in fiecare regiune.12
53. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi funcţia angajatului, căruia i s-a p<strong>la</strong>nificat cel maimult.54. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi funcţia angajatului, căruia i s-a p<strong>la</strong>nificat cel maipuţin.55. Proiectaţi o interogare, ce ar afişa valoarea medie adatoriilor companiilor.56. Proiectaţi o interogare, ce ar afişa valoarea medie adatorilor companiilor, ce au datorii mai mari ca 10 000 euro.57. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>angajaţi, ce sunt mai in varstă <strong>de</strong> 30 ani.58. Proiectaţi o interogare, ce ar afişa numărul <strong>de</strong>angajaţi ce sunt mai în vârstă <strong>de</strong> 40 ani sau mai tineri <strong>de</strong> 25 ani.59. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia şi vârsta angajaţilor, ce sunt mai în vârstă <strong>de</strong>25 ani şi mai tineri <strong>de</strong> 35 ani.60. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia, data angajării managerului cu cea mai maresumă p<strong>la</strong>nificată.61. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia, data angajării reprezentantului uneicompanii cu cea mai mică sumă p<strong>la</strong>nificată.62. Proiectaţi o interogare, ce ar afişa regiunea cu celemai multe oficii.13
63. Proiectaţi o interogare, ce ar afişa regiunea cu celemai puţine oficii.64. Proiectaţi o interogare, ce ar afişa: compania,numele şi prenumele reprezentantului companiei, in ordineaalfabetică după nume şi prenume.65. Proiectaţi o interogare, ce ar afişa: compania,numele şi prenumele angajaţilor, ce reprezintă compania şi suntmai tineri <strong>de</strong> 30 <strong>de</strong> ani şi mai in vârstă <strong>de</strong> 20 ani.66. Proiectaţi o interogare, ce ar afişa: numele,prenumele angajaţilor şi localitatea un<strong>de</strong> activează in ordineaalfabetică după nume şi prenume.67. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia, şi localitatea angajaţilor ce sunt manageriintr-un oficiu in ordinea invers alfabetică după nume şiprenume.68. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scriereaproduselor, ce au fost vândute precum şi cantitatea lor.69. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi funcţia reprezentanţilor unei singuri companii, inordinea alfabetică a companiilor.70. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi suma p<strong>la</strong>nificată a angajaţilor, care sunt manageriintr-o singură localitate, în ordinea alfabetică după nume şiprenume.71. Proiectaţi o interogare, ce ar afişa ziua, cand s-auvandut produse <strong>la</strong> o sumă minimală.14
72. Proiectaţi o interogare, ce ar afişa ziua, cand s-avandut cea mai mică cantitate <strong>de</strong> produse.73. Proiectaţi o interogare, ce ar afişa ziua, cand s-auvandut cea mai mare cantitate <strong>de</strong> produse.74. Proiectaţi o interogare, ce ar afişa ziua, cand s-auvândut produse <strong>de</strong> o sumă maximală.75. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia, localitatea angajatului, care a incheiatcontractul <strong>de</strong> cea mai mare sumă.76. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia, localitatea angajatului, care a incheiatcontractul <strong>de</strong> cea mai mică sumă.77. Proiectaţi o interogare, ce ar afişa: numele,prenumele, data angajării, funcţia angajaţilor <strong>de</strong> <strong>la</strong> Soroca inordinea alfabetică după nume şi prenume.78. Proiectaţi o interogare, ce ar afişa: numele,prenumele, data angajării, funcţia şi regiunea angajatului, carea incheiat contractul <strong>de</strong> cea mai mică sumă.79. Proiectaţi o interogare, ce ar afişa compania, ce aincheiat contractul <strong>de</strong> cea mai mare sumă, precum şi numele,prenumele reprezentatului ei.80. Proiectaţi o interogare, ce ar afişa compania ce aincheiat contractul <strong>de</strong> cea mai mică sumă, precum şi numele,prenumele reprezentatului ei.15
81. Proiectaţi o interogare, ce ar afişa: numele,prenumele, vârsta celui mai tânăr reprezentant a unei companiişi <strong>de</strong>numirea companii pe care o reprezintă.82. Proiectaţi o interogare, ce ar afişa: numele,prenumele, varsta celui mai varstnic reprezentant a uneicompanii şi <strong>de</strong>numirea companii pe care o reprezintă.83. Proiectaţi o interogare, ce ar afişa data realizăriifiecărei tranzacţii diferite, precum şi suma <strong>de</strong> bani acumu<strong>la</strong>tă inrezultatul tranzacţiei în ordinea crescătoare a <strong>date</strong>i.84. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniilor, ce participă <strong>la</strong> tranzacţii şi numărul <strong>de</strong> tranzacţiirealizate <strong>de</strong> companie.85. Proiectaţi o interogare, ce ar afişa: numele,prenumele şi suma <strong>de</strong> bani acumu<strong>la</strong>tă <strong>de</strong> angajat in ordineaalfabetică după nume şi prenume.86. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia şi varsta angajatului care a acumu<strong>la</strong>t ceamai mare sumă <strong>de</strong> bani.87. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia şi varsta angajatului care a acumu<strong>la</strong>t ceamai mică sumă <strong>de</strong> bani.88. Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celuimai scump produs cumpărat <strong>de</strong> compania Avon.Proiectaţi o interogare, ce ar afişa <strong>de</strong>scrierea celui mai scumpprodus cumpărat <strong>de</strong> compania Petrom şi care există <strong>la</strong> <strong>de</strong>pozit.16
90. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniei, care a incheiat cel mai mare număr <strong>de</strong> contracte.91. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniei, ce a incheiat cel mai mic număr <strong>de</strong> contracte.92. Proiectaţi o interogare, ce ar afişa <strong>de</strong>numireacompaniei, ce nu a incheiat nici un contract.93. Proiectaţi o interogare, ce ar afişa: numeleprenumele, suma p<strong>la</strong>nificată, suma acumu<strong>la</strong>tă a angajaţilor,care au realizat tranzacţii, în ordinea alfabetică după nume şiprenume.94. Proiectaţi o interogare, ce ar afişa: numele,prenumele, diferenţa dintre suma p<strong>la</strong>nificată şi suma acumu<strong>la</strong>tăa angajaţilor, care au realizat tranzacţii, în ordinea alfabeticădupă nume şi prenume.95. Proiectaţi o interogare ce ar afişa: numele,prenumele, funcţia angajaţilor, care au acumu<strong>la</strong>t mai mult <strong>de</strong>catli s-a p<strong>la</strong>nificat, în ordinea alfabetică după nume şi prenume.96. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia angajaţilor, care au acumu<strong>la</strong>t mai puţin<strong>de</strong>cat li s-a p<strong>la</strong>nificat în ordinea alfabetică după nume şiprenume.97. Proiectaţi o interogare, ce ar afişa: numele,prenumele, funcţia angajaţilor care au acumu<strong>la</strong>t cât li s-ap<strong>la</strong>nificat, în ordinea alfabetică după nume şi prenume.17
98. Proiectaţi o interogare, ce ar afişa localitateaoficiului, angajaţii căruia au acumu<strong>la</strong>t cea mai mare sumă <strong>de</strong>bani.99. Proiectaţi o interogare, ce ar afişa localitateaoficiului, angajaţii căruia au acumu<strong>la</strong>t cea mai mică sumă <strong>de</strong>bani.100. Proiectaţi o interogare, ce ar afişa numele şiprenumele managerului oficiului, angajaţii căruia au acumu<strong>la</strong>tcea mai mare sumă <strong>de</strong> bani.101. Proiectaţi o interogare, ce ar afişa numele şiprenumele managerului oficiului, angajaţii căruia au acumu<strong>la</strong>tcea mai mică sumă <strong>de</strong> bani.Actualizarea <strong>date</strong>lor102. Proiectaţi o interogare, ce ar introduce in baza <strong>de</strong><strong>date</strong> un angajat nou cu numele Ciobanu şi prenumele Vasile.103. Proiectaţi o interogare, ce ar introduce in baza <strong>de</strong><strong>date</strong> o companie nouă cu <strong>de</strong>numirea Dumbrava Nord, ce aredatorii în sumă <strong>de</strong> 3 000 euro.104. Proiectaţi o interogare, ce ar introduce in baza <strong>de</strong><strong>date</strong> un produs nou, ce există <strong>la</strong> <strong>de</strong>pozit cu <strong>de</strong>scrierea „telefonNokia 32”, cu preţul <strong>de</strong> 105 euro.105. Proiectaţi o interogare, ce ar anu<strong>la</strong> datoriacompaniei Astra.106. Proiectaţi o interogare, ce ar mări suma acumu<strong>la</strong>tăa angajatului Grosu Leonid cu 1 000 euro.18
107. Proiectaţi o interogare, ce ar mări suma acumu<strong>la</strong>tăa angajatului Nanu Vasile cu 30%.108. Proiectaţi o interogare, ce ar adăuga o tranzacţienouă, realizată <strong>de</strong> Cozma Ion cu compania Zorile, ce acumpărat 10 monitoare LG 17.109. Proiectaţi o interogare, ce ar şterge din baza <strong>de</strong><strong>date</strong> Marketing angajatul Vrabie Ion.110. Proiectaţi o interogare, ce ar şterge din baza <strong>de</strong><strong>date</strong> Marketing angajatul, care reprezintă compania Zorile.111. Proiectaţi o interogare, ce ar modifica numeleangajatului Mutu Livia in Grozavu.112. Proiectaţi o interogare, ce ar modifica <strong>de</strong>numireacompaniei Astra in BloomCom, iar codul in BC.113. Proiectaţi o interogare, ce ar şterge toatetranzacţiile realizate pe data <strong>de</strong> 02.02.2005.114. Proiectaţi o interogare, ce ar şterge toatetranzacţiile cu compania Basarabia.115. Proiectaţi o interogare, ce ar modifica varstatuturor angajaţilor prin mărirea cu un an.116. Proiectaţi o interogare, ce ar şterge din baza <strong>de</strong><strong>date</strong> angajaţii, a căror nume coinci<strong>de</strong> cu numele altor angajaţi.117. Proiectaţi o interogare, ce ar modifica funcţiaangajatului Surdu Mihaie<strong>la</strong> in manager.19
107. Proiectaţi o interogare, ce ar modifica <strong>de</strong>numireacompaniei Bizpro in Bussines Inc.108. Proiectaţi o interogare, ce ar adăuga un oficiunou în Otaci a regiunii <strong>de</strong> nord a cărui manager va fi seful.109. Proiectaţi o interogare, ce ar şterge din baza <strong>de</strong><strong>date</strong> toţi angajaţii <strong>de</strong> <strong>la</strong> Orhei.110. Proiectaţi o interogare, ce ar crea un tabel nou cunumele Nord, alcătuit din câmpurile: Cod-angajat, Nume,Prenume şi ar conţine lista angajaţilor din regiunea <strong>de</strong> nord aţării.111. Proiectaţi o interogare, ce ar crea un tabel nou cunumele Sud, alcătuit din câmpurile: Cod-angajat, Nume,Prenume şi ar conţine lista angajaţilor din regiunea <strong>de</strong> sud aţării.112. Proiectaţi o interogare, ce ar crea un tabel nou cunumele Angajatii <strong>de</strong> nord, alcătuit din câmpurile: Cod-angajat,Nume, Prenume Suma p<strong>la</strong>nificata şi ar conţine lista angajaţilordin regiunea <strong>de</strong> nord a ţării.113. Proiectaţi o interogare, ce ar crea un tabel nou cunumele Marfa, alcătuit din câmpurile: Cod-produs, Descriere,Pret şi ar conţine lista produselor ce există <strong>la</strong> <strong>de</strong>pozit.114. Proiectaţi o interogare, ce ar şterge din baza <strong>de</strong><strong>date</strong> toţi angajaţii <strong>de</strong> <strong>la</strong> Soroca.115. Proiectaţi o interogare, ce ar şterge toatetranzacţiile realizate pe data <strong>de</strong> 22.08.2005.20
Parametrizarea interogărilor127. Proiectaţi o interogare cu un parametru, ce arafişa codul, numele şi prenumele angajaţilor, iar campul numese va compara dacă coinci<strong>de</strong> cu parametrul interogării.128. Proiectaţi o interogare cu doi parametri, ce arafişa codul, numele şi prenumele angajaţilor, iar câmpul numese va compara dacă coinci<strong>de</strong> cu primul parametru, iar prenumecu al doilea parametru.129. Proiectaţi o interogare cu un parametru, ce arafişa codul, <strong>de</strong>scrierea şi preţul produselor, ce sunt mai ieftineca parametrul introdus <strong>de</strong> utilizator.130. Proiectaţi o interogare cu un parametru, ce arafişa codul, <strong>de</strong>scrierea şi preţul produselor, ce sunt mai scumpeca parametrul introdus <strong>de</strong> utilizator.131. Proiectaţi o interogare cu un parametru, ce arafişa codul, <strong>de</strong>scrierea şi preţul produselor, ce sunt mai ieftineca parametrul introdus <strong>de</strong> utilizator şi există <strong>la</strong> <strong>de</strong>pozit.132. Proiectaţi o interogare cu un parametru, ce arafişa codul, <strong>de</strong>scrierea şi preţul produselor, ce sunt mai scumpeca parametrul introdus <strong>de</strong> utilizator şi nu există <strong>la</strong> <strong>de</strong>pozit.133. Proiectaţi o interogare cu un parametru, ce arşterge din baza <strong>de</strong> <strong>date</strong> angajatul cu numele indicat <strong>de</strong> utilizatorin parametrul interogării.134. Proiectaţi o interogare cu un parametru, ce arşterge din baza <strong>de</strong> <strong>date</strong> produsul cu preţul indicat <strong>de</strong> utilizatorîn parametrul interogării.21
LIMBAJUL SQLIntroducereIstoria SQL (Structured Query Language) incepe in<strong>la</strong>boratoarele IBM din San Jose. Iniţial a fost <strong>de</strong>zvoltat pentruprodusul DB 2 al IBM. SQL este un limbaj procedural fiinddiferit <strong>de</strong> cele<strong>la</strong>lte limbajele procedurale, ce au fost create inacea perioadă. Limbajul <strong>de</strong> manipu<strong>la</strong>re a <strong>date</strong>lor (LMD) SQLare o sintaxă puţin diferită <strong>de</strong> <strong>la</strong> un sistem <strong>de</strong> gestiune a bazelor<strong>de</strong> <strong>date</strong> (SGBD) <strong>la</strong> altul. Pentru rezolvarea <strong>probleme</strong>lor dincapitolul prece<strong>de</strong>nt se va folosi limbajul standard SQL.Standard SQL nu face diferenţa dintre majuscule şi minuscule<strong>la</strong> scrierea unui cod <strong>de</strong> instrucţiune. Cele mai <strong>de</strong>s folositeinstrucţiuni in standard SQL sunt: SELECT, DELETE,INSERT, UPDATE. La scrierea unui cod SQL acesteinstrucţiuni folosesc diferite c<strong>la</strong>uze cum ar fi: TOP, FROM,AS, ORDER BY, GROUP BY, WHERE, SET, INTO,VALUES, etc. Instrucţiunile şi c<strong>la</strong>uzele pot avea un parametru,ce se indică imediat după <strong>de</strong>numirea c<strong>la</strong>uzei. In calitate <strong>de</strong>parametru a unei c<strong>la</strong>uze se poate folosi un număr, un text, unnume <strong>de</strong> camp, o listă <strong>de</strong> câmpuri, diferite simboluri speciale,operaţii aritmetice, expresii logice, operatori logici, funcţii.Instrucţiunea <strong>de</strong> selecţieInstrucţiunea SELECT permite regăsirea şi afişarea<strong>date</strong>lor din BD şi are următoarea sintaxă:SELECT listă_campuriFROM listă_tabeleParametrul listă_câmpuri ne permite să alegem câmpurile,conţinutul cărora se va afişa <strong>la</strong> ecran, precum şi ordineacampurilor. Numele câmpurilor se separă prin virgulă şi seindică exact aşa cum este în tabel.22
De exemplu:1. SELECT localitatea, regiunea2. SELECT nume, prenume, functia3. SELECT companiaDacă numele câmpului este alcătuit din două sau maimulte cuvinte atunci numele câmpului se indică între parantezepătrate. Nu este greşeală dacă se indică şi numele format dintrunsingur cuvânt între paranteze pătrate.De exemplu:1. SELECT compania, [reprezentantul companiei]2. SELECT nume, [suma p<strong>la</strong>nificata], [data angajarii]3. SELECT [nume], [prenume], [suma p<strong>la</strong>nificata]Dacă este nevoie <strong>de</strong> a afişa toate campurile unui tabe<strong>la</strong>tunci parametrul listă_câmpuri este înlocuit printr-un simbolspecial numit asterisc (*) sau cuvantul cheie ALL.De exemplu:1. SELECT *2. SELECT AllParametrul listă_câmpuri mai poate conţine şi operaţiiaritmetice dintre câmpurile numerice şi numere folosindparantezele rotun<strong>de</strong> şi operatorii: adunarea „+”, scă<strong>de</strong>rea „-”,înmulţirea „*”, împărţirea „/”, ridicarea <strong>la</strong> putere „^.” Valorilecampurilor textuale pot fi concatenate cu un oarecare text,notand operaţia <strong>de</strong> concatenare prin simbolul „+”. Constanteletextuale in SQL sant reprezentate intre simbolurile apostrof: ‘ ’,iar constantele calendaristice intre simbolurile # #. Valoarealogică se scrie „TRUE” dacă are valoarea a<strong>de</strong>vărată şi„FALSE” dacă are valoarea falsă. Pentru numerele reale parteaîntreagă se separă <strong>de</strong> cea zecimală prin punct.De exemplu:1. SELECT nume, prenume, [suma p<strong>la</strong>nificata]-1002. SELECT nume, prenume, ([suma p<strong>la</strong>nificata]+100)*23. SELECT nume + ’A’4. SELECT nume, prenume, [suma p<strong>la</strong>nificata]*0.523
Parametrul instrucţiunii SELECT mai poate conţine şi ofuncţie statistică cum ar fi: MAX() - valoarea maximală, MIN()- valoarea minimală, AVG() - valoarea medie, COUNT() -numărul total, SUM() - suma. Intre parantezele rotun<strong>de</strong> afuncţiei se indică numele câmpului.De exemplu:1. SELECT MAX(virsta)2. SELECT MIN([suma p<strong>la</strong>nificata])Parametrul listă_tabele a c<strong>la</strong>uzei FROM se foloseştepentru a indica numele tabelului, câmpurile căruia sunt utilizateîn instrucţiunea SELECT.De exemplu:1. SELECT nume, prenumeFROM angajati2. SELECT *FROM oficii3. SELECT nume, prenume, [reprezentantul companiei]FROM angajati, companiiModificarea titlului unui camp se face cu ajutorul c<strong>la</strong>uzeiAS, ce are sintaxa:SELECT nume-camp1 AS titlul-camp1, nume-camp2 AStitlul-camp2, …, nume-campN AS titlul-campNFROM listă_tabeleDacă titlul câmpului este alcătuit din două sau mai multecuvinte atunci se indică între paranteze pătrate.De exemplu:1. SELECT nume AS [numele angajatului], prenume AS[prenumele angajatului]FROM angajati2. SELECT min(virsta) AS [virsta celui mai tinar angajat]FROM angajatiDacă este nevoie <strong>de</strong> a afişa un număr limitat <strong>de</strong>înregistrări, atunci se utilizează c<strong>la</strong>uza TOP, ce are următoareasintaxă:24
SELECT TOP număr listă_campuriFROM listă_tabeleParametrul număr a c<strong>la</strong>uzei TOP indică câte înregistrărivor fi afişate.De exemplu:1. SELECT TOP 10 nume, prenumeFROM angajati2. SELECT TOP 5 localitatea AS [localitati 5]FROM oficiiPentru afişarea <strong>date</strong>lor dintr-un tabel intr-o anumităordine este nevoie <strong>de</strong> a utiliza c<strong>la</strong>uza ORDER BY, care areurmătoarea sintaxă:SELECT listă_câmpuriFROM listă_tabeleORDER BY listă_câmpuriParametrul listă_câmpuri a c<strong>la</strong>uzei ORDER BY indicădupă care câmp se vor ordona <strong>date</strong>le. Dacă <strong>la</strong> sfârşitul unuicamp este cuvantul cheie DESC, atunci sortarea se va face<strong>de</strong>screscător sau în ordinea invers alfabetică, în caz contrarsortarea este în ordinea alfabetică sau crescător.De exemplu:1. SELECT nume, prenumeFROM angajatiORDER BY nume2. SELECT localitatea, regiuneaFROM oficiiORDER BY localitatea DESC, regiuneaDeseori <strong>la</strong> folosirea funcţiilor statistice este nevoie <strong>de</strong> agrupa <strong>date</strong>le după unu sau mai multe campuri şi pentru aceastaîn SQL se foloseşte c<strong>la</strong>uza GROUP BY cu următoarea sintaxă:SELECT listă_câmpuriFROM listă_tabeleGROUP BY listă_câmpuri25
Parametrul listă_câmpuri a c<strong>la</strong>uzei GROUP BY indicădupă care câmp se va realiza grupare <strong>date</strong>lor.De exemplu:1. SELECT nume, max(virsta) AS virstaFROM angajatiGROUP BY nume2. SELECT COUNT(localitatea) AS [numarul <strong>de</strong> oficii]FROM oficiiGROUP BY regiuneaCel mai <strong>de</strong>s In SQL se foloseşte afişarea <strong>date</strong>lor cuanumite condiţii. C<strong>la</strong>uza WHERE a instrucţiunii SELECTpermite afişarea <strong>date</strong>lor în <strong>de</strong>pen<strong>de</strong>nţă <strong>de</strong> condiţii şi areurmătoarea sintaxă:SELECT listă_câmpuriFROM listă_tabeleWHERE condiţiiParametrul condiţii a c<strong>la</strong>uzei WHERE reprezintă oexpresie ce compară două valori, două câmpuri, un câmp cu ovaloare folosind unul din operatorii <strong>de</strong> comparare: „” mai mare, „= mai mare sauegal”, „=” egal, „” diferit.De exemplu:1. SELECT nume, prenumeFROM angajatiWHERE [suma p<strong>la</strong>nificata]>100002. SELECT localitatea, regiuneaFROM oficiiWHERE regiunea=’nord’Dacă condiţia este compusă, atunci între condiţii sefolosesc operatorii logici: AND – şi; OR – sau; NOT – nu.De exemplu:1. SELECT localitatea, regiuneaFROM oficiiWHERE NOT regiunea=’nord’26
2. SELECT nume, prenumeFROM angajatiWHERE [suma p<strong>la</strong>nificata]>10000 AND [sumap<strong>la</strong>nificata]
1. SELECT nume, prenume, localitateaFROM angajati, oficiiWHERE angajati.[codul oficiului]=oficii.[cod-oficiu]2. SELECT nume, prenume, localitatea, regiuneaFROM oficii, angajatiWHERE angajati.[codul oficiului]=oficii.[cod-oficiu]AND regiunea=’nord’Dacă este necesar <strong>de</strong> a p<strong>la</strong>sa <strong>date</strong>le selectate <strong>de</strong>instrucţiunea SELECT într-un tabel nou, care trebuie creatatunci se foloseşte c<strong>la</strong>uza INTO cu următoarea sintaxă:SELECT listă_câmpuriFROM listă_tabeleINTO nume_tabel_nouParametrul nume_tabel_nou a c<strong>la</strong>uzei INTO indicănumele tabelului care se va crea, folosind <strong>date</strong>le din campurileindicate in instrucţiunea SELECT.Din cele expuse mai sus putem stabili formatul general alinstrucţiunii SELECT. Se vor indica intre paranteze figuratec<strong>la</strong>uzele opţionale:SELECT {TOP număr}listă_câmpuri{AS titlul_camp}FROM listă_tabele{INTO nume_tabel_nou}{WHERE condiţie}{GROUP BY listă_câmpuri}{ORDER BY listă_câmpuri}Instrucţiunea <strong>de</strong> ştergereInstrucţiunea DELETE permite ştergerea <strong>date</strong>lor din BDşi are următoarea sintaxă:DELETEFROM nume_tabel28
Parametrul nume_tabel a c<strong>la</strong>uzei FROM din instrucţiuneaDELETE indică din care tabel se vor şterge toate <strong>date</strong>le.De exemplu:1. DELETEFROM angajati2. DELETE FROM oficiiDacă este nevoie <strong>de</strong> a şterge numai unele înregistrări,atunci se va utiliza c<strong>la</strong>uza WHERE, ce are următoarea sintaxă:DELETEFROM nume_tabelWHERE condiţieParametrul condiţie a c<strong>la</strong>uzei WHERE are aceiaşistructură ca şi cel din c<strong>la</strong>uza WHERE a instrucţiunii SELECT.La executarea acestei interogări din BD se vor şterge toateînregistrările, ce satisfac condiţia din c<strong>la</strong>uza WHERE.Deci formatul general al instrucţiunii DELETE este:DELETEFROM nume_tabel{WHERE condiţie}C<strong>la</strong>uza WHERE este opţională in instrucţiunea DELETE,<strong>de</strong> aceia ea se indică intre paranteze figurate.Instrucţiunea <strong>de</strong> adăugareInstrucţiunea INSERT permite adăugarea <strong>date</strong>lor in BDşi are următoarea sintaxă:INSERT INTO nume_tabel (listă_campuri)VALUES(listă_valori)Parametrul nume_tabel a c<strong>la</strong>uzei INTO <strong>de</strong>termină tabelul incare se va face adăugarea. Intre paranteze rotun<strong>de</strong> se indicăparametrul listă_câmpuri, care reprezintă numele campurilortabelului indicat <strong>la</strong> inceput. Parametrul listă_valori a c<strong>la</strong>uzeiVALUES se foloseşte pentru a indica valorile fiecărui câmp înînregistrarea nouă. In acest parametru trebuie respectate29
egulile <strong>de</strong> scriere a valorilor. Valorile se indică în ordinea incare au fost indicate campurile respective in c<strong>la</strong>uza INTO.Numărul <strong>de</strong> valori în listă_valori este ace<strong>la</strong>şi ca şi numărul <strong>de</strong>câmpuri din listă_campuri.De exepmlu:1. INSERT INTO produse(<strong>de</strong>scriere)VALUES (’Telefon Siemens C65’)2. INSERT INTO produse (<strong>de</strong>scriere, pret, exist)VALUES('Telefon Siemens C75',100,TRUE)Deci formatul general al instrucţiunii INSERT este:INSERTINTO nume_tabel (lista_campuri) VALUES(lista_valori)Instrucţiunea <strong>de</strong> modificareInstrucţiunea UPDATE permite modificarea <strong>date</strong>lor dinBD şi are următoarea sintaxă:UPDATE nume_tabelSET listă_campuri-valoriParametrul nume_tabel <strong>de</strong>termină în care tabel se varealiza modificarea. C<strong>la</strong>uza SET se foloseşte pentru înscriereavalorii noi peste cea veche. Parametrul listă_câmpuri-valori areformatul nume_camp=valoare.De exepmlu:1. UPDATE ProduseSET pret=102. UPDATE ProduseSET pret=10, exist=trueDacă este nevoie <strong>de</strong> a modifica numai unele <strong>date</strong> cesatisfac careva condiţii, atunci se foloseşte c<strong>la</strong>uza WHERE cuurmătoarea sintaxă:UPDATE nume_tabelSET listă_câmpuri-valoriWHERE condiţie30
Parametrul condiţie a c<strong>la</strong>uzei WHERE din instrucţiuneaUPDATE este <strong>la</strong> fel ca şi în instrucţiunea SELECT.De exepmlu:1. UPDATE ProduseSET pret=pret*10WHERE <strong>de</strong>scriere=’ CD-R Benq 700MB’2. UPDATE ProduseSET pret=pret/2WHERE NOT exist=’true’Deci, in urma celor expuse, putem stabili formatulinstrucţiunii UPDATE:UPDATE nume_tabelSET listă_câmpuri-valori{WHERE condiţie}C<strong>la</strong>uza WHERE este opţională în instrucţiuneaUPDATE, <strong>de</strong> aceia ea se indică între paranteze figurate.Instrucţiunea <strong>de</strong> selecţie inclusăO răspandire foarte <strong>la</strong>rgă în SQL le au cererile imbricate,care mai sunt numite cereri incluse. Cererea imbricată este ointerogare <strong>de</strong> selecţie, în interiorul căreia este inclusă o altăinterogare <strong>de</strong> selecţie. La proiectarea unei cereri incluse estenecesar ca interogarea imbricată să returneze valori dintr-unsingur camp. Interogarea imbricată este o comparare <strong>de</strong> tipu<strong>la</strong>partenenţei <strong>la</strong> o mulţime. O valoare se compară cu o coloană<strong>de</strong> <strong>date</strong>, returnată <strong>de</strong> interogarea inclusă. Dacă această valoarecoinci<strong>de</strong> cu o valoare din coloană, atunci se afişează câmpurileindicate in interogarea principală. O cerere imbricată areurmătoarea sintaxă:SELECT listă_câmpuriFROM listă_tabeleWHERE nume_camp IN (SELECT nume_campFROM nume_tabel)31
De exemplu:1. SELECT nume, prenumeFROM angajatiWHERE [codul oficiului] IN (SELECT [cod-oficiu]FROM oficiiWHERE localitatea='Beltsy')2. SELECT nume, prenume,virstaFROM angajatiWHERE [codul oficiului] IN (SELECT [cod-oficiu]FROM oficiiWHERE regiunea'sud')Dacă interogarea inclusă returnează o singură valoare,atunci in loc <strong>de</strong> cuvantul cheie IN se poate utiliza un operatorre<strong>la</strong>ţional.De exemplu:1. SELECT nume, prenumeFROM angajatiWHERE [codul oficiului]=(SELECT [cod-oficiu]FROM oficiiWHERE localitatea='Beltsy')2. SELECT nume, prenume, virstaFROM angajatiWHERE [codul oficiului](SELECT [cod-oficiu]FROM oficiiWHERE localitatea='Soroca')Parametrizarea interogărilorLa activarea unei instrucţiuni <strong>de</strong> selecţie <strong>la</strong> ecran, <strong>de</strong>obicei apare un tabel care afişează informaţia bazei <strong>de</strong> <strong>date</strong>conform conţinutului instrucţiunii SELECT.La activarea unei instrucţiuni <strong>de</strong> actualizare cum ar fi ştergerea<strong>date</strong>lor, modificarea <strong>date</strong>lor, inserarea <strong>date</strong>lor sau crearea unuitabel <strong>la</strong> ecran apare un mesaj care ne anunţă că32
interogarea s-a executat cu succes şi câte înregistrări au fostactualizate.Rezultatul instrucţiunilor <strong>de</strong> afişare şi actualizare a<strong>date</strong>lor, poate <strong>de</strong>pin<strong>de</strong> <strong>de</strong> unele valori ce pot fi modificate <strong>la</strong>fiecare <strong>la</strong>nsare a interogării. Aceste valori se numesc parametrisau variabile, iar interogările ce conţin astfel <strong>de</strong> valori senumesc interogări parametrizate. Pentru a parametriza ointerogare se foloseşte cuvântul cheie PARAMETERS, care seindică <strong>la</strong> începutul instrucţiunii şi are următoarea sintaxă:PARAMETERS lista_parametrilorLista_parametrilor indică valorile ce vor fi introduseînainte <strong>de</strong> afişarea sau actualizarea <strong>date</strong>lor şi sunt separate prinvirgulă. Dacă parametrul este alcătuit din două sau mai multecuvinte, atunci el se indică între paranteze pătrate. Dacă este unsingur cuvant atunci parantezele pătrate pot fi neglijate. Dupăindicarea parametrului trebuie <strong>de</strong> specificat tipul <strong>de</strong> <strong>date</strong> aparametrului.De exemplu:1. PARAMETERS [indica numele persoanei cautate] TEXT2. PARAMETERS nume TEXT, prenume TEXT3. PARAMETERS [coeficientul <strong>de</strong> majorare] NUMBERParametrul <strong>de</strong>c<strong>la</strong>rat <strong>de</strong> instrucţiunea PARAMETERSpoate fi folosit în codul instrucţiunii ca o valoare constantă înc<strong>la</strong>uza WHERE a instrucţiunii sau <strong>la</strong> <strong>de</strong>scrierea unui campcalcu<strong>la</strong>t. Valoarea parametrului este constantă pe toată perioada<strong>de</strong> execuţie a instrucţiunii.De exemplu:1. PARAMETERS numele TEXTSELECT nume, prenumeFROM angajatiWHERE nume=numele2. PARAMETERS [majorarea pretului] NUMBERUPDATE produseSET pret=pret*[majorarea pretului]33
RĂSPUNSURIÎn continuare se va prezenta în formă <strong>de</strong> tabelerăspunsurile <strong>la</strong> <strong>probleme</strong>le bazate pe selectarea <strong>date</strong>lor.Problema 1:CompaniaAuto LadaAsitoAstraAvonBasarabiaBizproCascadFloribelFloareaInLacKnaufLuck OilPatriaPetromTransComTirexTutun IndVitantaZorileProblema 2:Localitatea RegiuneaBeltsy nordKishinew centruCahul sudEdinets nordGlo<strong>de</strong>ni nordOrhei centru34
Localitatea RegiuneaRezina nordSoroca nordUngheni centruProblema 3:Cod-oficiu Localitatea Regiunea Codul manageruluiBL Beltsy nord MLC Kishinew centru VDCH Cahul sud HIED Edinets nord MLGL Glo<strong>de</strong>ni nord MLOR Orhei centru LVRZ Rezina nord SDSR Soroca nord BNUN Ungheni centru VDProblema 4:Cod-produs Descriere Pret Exist1 Monitor LG 17 100.00 True2 Monitor Samsung 15 50.00 False3 Televizor JVS 54cm 280.00 False4 Procesor Pentium 4 130.00 True5 Procesor Celeron 2000 125.00 True6 Mouse Genius optic 4.00 False7 Mouse Logitech optic 5.00 True8 Televizor Sony 72cm 485.00 False9 DVD Sony 50 75.00 False10 DVD Sony 32-16-32 135.00 True11 CD-R Benq 700MB 0.10 True12 CD-RW Benq 700MB 0.25 True13 Tastiera Logitech alba 6.75 True14 Tastiera Logitech neagra 9.75 False15 Monitor Samsung 17 85.50 True16 Monitor Samsung 21 109.50 False35
36Cod-produs Descriere Pret Exist17 Monitor Samtron 15 35.50 False18 Televizor Alfa 51cm 100.40 True19 Televizor Po<strong>la</strong>r 54cm 200.00 False20 Filtru Sven 220V 3.75 True21 Telefon Siemens A55 85.00 TrueProblema 5:Cod-angajat Nume Prenume VirstaBC Bucataru Constantin 31BN Bucur Nico<strong>la</strong>e 27CI Cozma Ion 20DE Dodon Elena 34DR Dutca Radion 33FE Frumosu Emilia 37FN Florea Nicoleta 23GC Grosu Corina 19GI Gomoja Ilie 32GL Grosu Leonid 23GM Grosu Mihai 42GT Graur Teodor 35HI Harea Igor 25LA Lungu Alexandru 43LV Lisnic V<strong>la</strong>dimir 29ML Mutu Livia 38MS Mutu Sorina 35NV Nanu Vasile 45PI Prisacaru Inga 27RD Rusu Dorina 35SA Speriatu Ana 31SD Spada Doru 29SM Surdu Mihaie<strong>la</strong> 25VD Vieru Dorin 32VI Vrabie Ion 42
Problema 6:Cod-companie Compania Reprezentantul DatoriacompanieiAL Auto Lada NV 7 500.00AS Asito PI 26 000.00AT Astra PI 14 780.00AV Avon GC 12 000.00BA Basarabia GC 0.00BI Bizpro PI 13 050.00CA Cascad GI 12 300.00FL Floarea GL 0.00FB Floribel GL 600.00IL InLac GI 1 000.00KN Knauf PI 0.00LO Luck Oil NV 13 000.00PA Patria DR 500.00PE Petrom NV 50 000.00TC TransCom MS 6 000.00TI Tirex NV 5 000.00TU Tutun Ind GL 1 000.00VT Vitanta GI 800.00ZO Zorile GT 22 890.00Problema 7:Cod-angajat Nume PrenumeBC Bucataru ConstantinBN Bucur Nico<strong>la</strong>eCI Cozma IonDE Dodon ElenaDR Dutca RadionFE Frumosu EmiliaFN Florea NicoletaGC Grosu CorinaGI Gomoja Ilie37
Cod-angajat Nume PrenumeGL Grosu LeonidGM Grosu MihaiGT Graur TeodorHI Harea IgorLA Lungu AlexandruLV Lisnic V<strong>la</strong>dimirML Mutu LiviaMS Mutu SorinaNV Nanu VasilePI Prisacaru IngaRD Rusu DorinaSA Speriatu AnaSD Spada DoruSM Surdu Mihaie<strong>la</strong>VD Vieru DorinVI Vrabie IonProblema 8:Cod-companie CompaniaALAuto LadaASAsitoATAstraAVAvonBABasarabiaBIBizproCACascadFBFloribelFLFloareaILInLacKNKnaufLOLuck OilPAPatriaPEPetrom38
Cod-companie CompaniaTCTransComTITirexTUTutun IndVTVitantaZOZorileProblema 9:Cod-angajat Nume Prenume Functia VirstaBC Bucataru Constantin contabil 31BN Bucur Nico<strong>la</strong>e manager 27CI Cozma Ion reprezentant 20DE Dodon Elena contabil 34DR Dutca Radion reprezentant 33FE Frumosu Emilia contabil 37FN Florea Nicoleta reprezentant 23GC Grosu Corina reprezentant 19GI Gomoja Ilie reprezentant 32GL Grosu Leonid reprezentant 23GM Grosu Mihai sef 42GT Graur Teodor reprezentant 35HI Harea Igor manager 25LA Lungu Alexandru sef adjunc 43LV Lisnic V<strong>la</strong>dimir manager 29ML Mutu Livia manager 38MS Mutu Sorina reprezentant 35NV Nanu Vasile reprezentant 45PI Prisacaru Inga reprezentant 27RD Rusu Dorina reprezentant 35SA Speriatu Ana contabil 31SD Spada Doru manager 29SM Surdu Mihaie<strong>la</strong> reprezentant 25VD Vieru Dorin manager 32VI Vrabie Ion contabil 4239
Problema 10:LocalitateaoficiuluiRegiuneaoficiuluiBeltsy nordKishinew centruCahul sudEdinets nordGlo<strong>de</strong>ni nordOrhei centruRezina nordSoroca nordUngheni centruProblema 11:CodpersonalNumeleangajatuluiPrenumeleangajatuluiBC Bucataru ConstantinBN Bucur Nico<strong>la</strong>eCI Cozma IonDE Dodon ElenaDR Dutca RadionFE Frumosu EmiliaFN Florea NicoletaGC Grosu CorinaGI Gomoja IlieGL Grosu LeonidGM Grosu MihaiGT Graur TeodorHI Harea IgorLA Lungu AlexandruLV Lisnic V<strong>la</strong>dimirML Mutu LiviaMS Mutu SorinaNV Nanu Vasile40
CodpersonalNumeleangajatuluiPrenumeleangajatuluiPI Prisacaru IngaRD Rusu DorinaSA Speriatu AnaSD Spada DoruSM Surdu Mihaie<strong>la</strong>VD Vieru DorinVI Vrabie IonProblema 12:Compania DatoriaAsito 26 000.00Astra 14 780.00Auto Lada 7 500.00Avon 12 000.00Basarabia 0.00Bizpro 13 050.00Cascad 12 300.00Floarea 0.00Floribel 600.00InLac 1 000.00Knauf 0.00Luck Oil 13 000.00Patria 500.00Petrom 50 000.00Tirex 5 000.00TransCom 6 000.00Tutun Ind 1 000.00Vitanta 800.00Zorile 22 890.00Problema 13:Nume Prenume FunctiaBucataru Constantin contabil41
Nume Prenume FunctiaBucur Nico<strong>la</strong>e managerCozma Ion reprezentantDodon Elena contabilDutca Radion reprezentantFlorea Nicoleta reprezentantFrumosu Emilia contabilGomoja Ilie reprezentantGraur Teodor reprezentantGrosu Mihai sefGrosu Leonid reprezentantGrosu Corina reprezentantHarea Igor managerLisnic V<strong>la</strong>dimir managerLungu Alexandru sef adjuncMutu Livia managerMutu Sorina reprezentantNanu Vasile reprezentantPrisacaru Inga reprezentantRusu Dorina reprezentantSpada Doru managerSperiatu Ana contabilSurdu Mihaie<strong>la</strong> reprezentantVieru Dorin managerVrabie Ion contabilProblema 14:Compania DatoriaPetrom 50 000.00Asito 26 000.00Zorile 22 890.00Astra 14 780.00Bizpro 13 050.00Luck Oil 13 000.0042
Compania DatoriaCascad 12 300.00Avon 12 000.00Auto Lada 7 500.00TransCom 6 000.00Tirex 5 000.00Tutun Ind 1 000.00InLac 1 000.00Vitanta 800.00Floribel 600.00Patria 500.00Basarabia 0.00Knauf 0.00Floarea 0.00Problema 15:Nume Prenume FunctiaGrosu Corina reprezentantCozma Ion reprezentantGrosu Leonid reprezentantFlorea Nicoleta reprezentantSurdu Mihaie<strong>la</strong> reprezentantHarea Igor managerBucur Nico<strong>la</strong>e managerPrisacaru Inga reprezentantSpada Doru managerLisnic V<strong>la</strong>dimir managerProblema 16:Nume Prenume FunctiaNanu Vasile reprezentantLungu Alexandru sef adjuncGrosu Mihai sefVrabie Ion contabilMutu Livia manager43
Nume Prenume FunctiaFrumosu Emilia contabilRusu Dorina reprezentantGraur Teodor reprezentantMutu Sorina reprezentantDodon Elena contabilProblema 17:Nume Prenume FunctiaLungu Alexandru sef adjuncGrosu Mihai sefVieru Dorin managerNanu Vasile reprezentantFrumosu Emilia contabilMutu Livia managerDutca Radion reprezentantDodon Elena contabilSurdu Mihae<strong>la</strong> reprezentantGrosu Leonid reprezentantProblema 18:CompaniaPetromProblema 19:Nume Prenume Codul personal FunctiaGrosu Corina GC reprezentantProblema 20:DescrierePretMonitor LG 17 100.00Procesor Pentium 4 130.00Procesor Celeron 2000 125.00Mouse Logitech optic 5.00DVD Sony 32-16-32 135.00CD-R Benq 700MB 0.10CD-RW Benq 700MB 0.2544
DescrierePretTastiera Logitech alba 6.75Monitor Samsung 17 85.50Televizor Alfa 51cm 100.40Filtru Sven 220V 3.75Telefon Siemens A55 85.00Problema 21:LocalitateaBeltsyEdinetsGlo<strong>de</strong>niRezinaSorocaProblema 22:LocalitateaCahulProblema 23:LocalitateaKishinewOrheiUngheniProblema 24:CompaniaAsitoAstraAvonBizproCascadLuck OilPetromZorile45
Problema 25:Problema 26:Problema 27:CompaniaAuto LadaBasarabiaFloribelFloareaInLacKnaufPatriaTransComTirexTutun IndVitantaCompaniaAsitoAstraAvonBizproCascadLuck OilPetromZorileCompaniaAuto LadaBasarabiaFloribelFloareaInLacKnaufPatriaTransCom46
CompaniaTirexTutun IndVitantaProblema 28:CompaniaBasarabiaFloareaKnaufProblema 29:Nume Prenume FunctiaBucataru Constantin contabilDodon Elena contabilFrumosu Emilia contabilGrosu Mihai sefLungu Alexandru sef adjuncSperiatu Ana contabilVrabie Ion contabilProblema 30:Nume Prenume Virsta FunctiaBucur Nico<strong>la</strong>e 27 managerGraur Teodor 35 reprezentantHarea Igor 25 managerMutu Livia 38 managerSpada Doru 29 managerSurdu Mihae<strong>la</strong> 25 reprezentantVieru Dorin 32 managerProblema 31:LocalitateaBeltsyCahulEdinetsGlo<strong>de</strong>ni47
Problema 32:Problema 33:Problema 34:Problema 35:NumeVieruVrabieNumeCozmaDutcaFloreaGomojaHareaSpadaLocalitateaRezinaSorocaLocalitateaBeltsyKishinewEdinetsGlo<strong>de</strong>niOrheiRezinaSorocaUngheniLocalitateaKishinewCahulOrheiUngheniPrenumeDorinIonPrenumeIonRadionNicoletaIlieIgorDoru48
Problema 36:Nume PrenumeCozma IonDodon ElenaFrumosu EmiliaFlorea NicoletaGrosu CorinaGomoja IlieGrosu LeonidGrosu MihaiProblema 37:Nume Prenume VirstaGrosu Corina 19Problema 38:Nume Prenume FunctiaGraur Teodor reprezentantGrosu Corina reprezentantGrosu Leonid reprezentantGrosu Mihai sefProblema 39:Rezultat25Problema 40:Rezultat3Problema 41:Rezultat11Problema 42:Rezultat549
Problema 43:Problema 44:Problema 45:Problema 46:Problema 47:Problema 48:Problema 49:Problema 50:Problema 51:Problema 52:RegiuneaRezultat6Rezultat12Rezultat186 420.00DescriereTelevizor Sony 72cmDescriereCD-R Benq 700MBDescriereDVD Sony 32-16-32DescriereCD-R Benq 700MBDescriereTelevizor Sony 72cmDescriereMouse Genius opticNumarul <strong>de</strong> localitaticentru 3nord 5Sud 150
Problema 53:Nume Prenume FunctiaVieru Dorin managerProblema 54:Nume Prenume FunctiaVrabie Ion contabilFrumosu Emilia contabilGrosu Mihai sefBucataru Constantin contabilSperiatu Ana contabilDodon Elena contabilLungu Alexandru sef adjuncProblema 55:Rezultat9 811.58Problema 56:Rezultat20 502.50Problema 57:Rezultat15Problema 58:Rezultat8Problema 59:Nume Prenume Functia VirstaBucataru Constantin contabil 31Bucur Nico<strong>la</strong>e manager 27Dodon Elena contabil 34Dutca Radion reprezentant 33Gomoja Ilie reprezentant 32Lisnic V<strong>la</strong>dimir manager 29Prisacaru Inga reprezentant 2751
52Nume Prenume Functia VirstaSperiatu Ana contabil 31Spada Doru manager 29Vieru Dorin manager 32Problema 60:Nume Prenume Functia Data angajariiVieru Dorin manager 08.02.1998Problema 61:Nume Prenume Functia Data angajariiGrosu Corina reprezentant 04.04.2000Problema 62:RegiuneanordProblema 63:RegiuneasudProblema 64:Compania Nume PrenumePatria Dutca RadionInLac Gomoja IlieVitanta Gomoja IlieCascad Gomoja IlieZorile Grau TeodorAvon Grosu CorinaBasarabia Grosu CorinaFloribel Grosu LeonidFloarea Grosu LeonidTutun Ind Grosu LeonidTransCom Mutu SorinaLuck Oil Nanu VasileAuto Lada Nanu VasilePetrom Nanu VasileTirex Nanu Vasile
Compania Nume PrenumeBizpro Prisacaru IngaAstra Prisacaru IngaAsito Prisacaru IngaKnauf Prisacaru IngaProblema 65:Compania Nume PrenumeAsito Prisacaru IngaAstra Prisacaru IngaBizpro Prisacaru IngaFloribel Grosu LeonidFloarea Grosu LeonidKnauf Prisacaru IngaTutun Ind Grosu LeonidProblema 66:Nume Prenume LocalitateaBucataru Constantin SorocaBucur Nico<strong>la</strong>e SorocaCozma Ion OrheiDodon Elena EdinetsDutca Radion Glo<strong>de</strong>niFlorea Nicoleta BeltsyFrumosu Emilia EdinetsGomoja Ilie CahulGraur Teodor SorocaGrosu Corina RezinaGrosu Leonid EdinetsGrosu Mihai KishinewHarea Igor CahulLisnic V<strong>la</strong>dimir OrheiLungu Alexandru KishinewMutu Livia BeltsyMutu Sorina Ungheni53
Nume Prenume LocalitateaNanu Vasile KishinewPrisacaru Inga UngheniRusu Dorina OrheiSpada Doru RezinaSperiatu Ana Glo<strong>de</strong>niSurdu Mihaie<strong>la</strong> BeltsyVieru Dorin KishinewVrabie Ion RezinaProblema 67:Nume Prenume LocalitateaVieru Dorin UngheniVieru Dorin KishinewSpada Doru RezinaMutu Livia Glo<strong>de</strong>niMutu Livia EdinetsMutu Livia BeltsyLisnic V<strong>la</strong>dimir OrheiHarea Igor CahulBucur Nico<strong>la</strong>e SorocaProblema 68:DescriereCantitatea tota<strong>la</strong>CD-R Benq 700MB 24CD-RW Benq 700MB 22DVD Sony 50 2Filtru Sven 220V 9Monitor Samsung 15 3Monitor Samsung 17 15Monitor Samsung 21 11Monitor Samtron 15 13Mouse Genius optic 2Mouse Logitech optic 5Procesor Celeron 2000 2154
DescriereCantitatea tota<strong>la</strong>Procesor Pentium 4 14Tastiera Logitech alba 20Tastiera Logitech neagra 28Telefon Siemens A55 5Televizor Alfa 51cm 11Televizor JVS 54cm 13Televizor Po<strong>la</strong>r 54cm 8Televizor Sony 72cm 4Problema 69:Nume Prenume FunctiaMutu Sorina reprezentantGraur Teodor reprezentantDutca Radion reprezentantProblema 70:Nume Prenume Suma p<strong>la</strong>nificataBucur Nico<strong>la</strong>e 28 000.00Harea Igor 22 000.00Lisnic V<strong>la</strong>dimir 351.00Spada Doru 18 000.00Problema 71:Data comenzii03.03.2005Problema 72:Data comenzii02.02.200522.02.200502.03.2005Problema 73:Data comenzii16.08.200503.01.200555
Problema 74:Data comenzii24.05.2005Problema 75:Nume Prenume Functia LocalitateaFlorea Nicoleta reprezentant BeltsyProblema 76:Nume Prenume Functia LocalitateaGomoja Ilie reprezentant CahulProblema 77:Nume Prenume Data angajarii FunctiaBucataru Constantin 18.01.2001 contabilBucur Nico<strong>la</strong>e 31.01.2001 managerGraur Teodor 18.08.2004 reprezentantProblema 78:Nume Prenume Data angajarii Functia RegiuneaGomoja Ilie 13.07.2005 reprezentant sudProblema 79:Compania Nume PrenumeAstra Prisacaru IngaProblema 80:Compania Nume PrenumeCascad Gomoja IlieProblema 81:Nume Prenume Virsta CompaniaGrosu Corina 19 AvonGrosu Corina 19 BasarabiaProblema 82:Nume Prenume Virsta CompaniaNanu Vasile 45 TirexNanu Vasile 45 PetromNanu Vasile 45 Luck OilNanu Vasile 45 Auto Lada56
Problema 83:Data comenzii Suma <strong>de</strong> bani01.01.2005 25.0001.01.2005 342.0003.01.2005 0.7503.01.2005 117.0014.01.2005 684.0018.01.2005 0.7531.01.2005 0.2031.01.2005 87.7502.02.2005 0.5011.02.2005 150.0011.02.2005 170.0022.02.2005 13.5002.03.2005 71.0003.03.2005 0.3004.03.2005 29.2512.03.2005 39.0012.03.2005 485.0026.03.2005 2.5026.03.2005 1 455.0004.04.2005 0.5014.04.2005 20.2518.04.2005 280.0018.04.2005 803.2018.04.2005 7.5001.05.2005 255.0024.05.2005 2 800.0024.05.2005 400.0013.06.2005 74.2513.06.2005 150.0016.06.2005 876.0004.07.2005 0.5057
Data comenzii Suma <strong>de</strong> bani11.07.2005 256.5016.07.2005 301.2016.07.2005 1 430.0008.08.2005 1 125.0008.08.2005 0.4016.08.2005 1 500.0016.08.2005 106.5020.09.2005 8.0020.09.2005 328.5010.10.2005 26.2510.10.2005 0.5011.11.2005 1 200.0012.11.2005 1.0012.11.2005 390.0019.11.2005 284.0012.12.2005 560.0012.12.2005 27.00Problema 84:Compania Numarul <strong>de</strong> tranzactiiAsito 2Astra 4Auto Lada 1Avon 1Bizpro 1Cascad 3Floarea 3Floribel 2InLac 2Knauf 1Luck Oil 2Patria 5Petrom 458
Compania Numarul <strong>de</strong> tranzactiiTirex 1TransCom 1Tutun Ind 5Vitanta 6Zorile 4Problema 85:Nume Prenume Suma acumu<strong>la</strong>taBucataru Constantin 803.20Bucur Nico<strong>la</strong>e 1 446.00Cozma Ion 1 900.00Dodon Elena 1 126.75Florea Nicoleta 2 970.00Gomoja Ilie 599.95Grosu Corina 1 605.60Grosu Leonid 27.75Harea Igor 191.75Lisnic V<strong>la</strong>dimir 351.00Mutu Livia 1 437.50Mutu Sorina 26.75Nanu Vasile 473.50Prisacaru Inga 2 243.80Rusu Dorina 309.20Spada Doru 1 231.75Surdu Mihaie<strong>la</strong> 170.75Problema 86:Nume Prenume Functia VirstaFlorea Nicoleta reprezentant 23Problema 87:Nume Prenume Functia VirstaMutu Sorina reprezentant 3559
Problema 88:Problema 89:Problema 90:Problema 91:Problema 92:DescriereaTelevizor Po<strong>la</strong>r 54cmDescriereaProcesor Pentium 4CompaniaVitantaCompaniaKnaufAuto LadaAvonTransComTirexBizproCompaniaBasarabiaProblema 93:Nume Prenume Suma p<strong>la</strong>nificata Suma acumu<strong>la</strong>taBucataru Constantin 0.00 803.20Bucur Nico<strong>la</strong>e 28 000.00 1 416.75Cozma Ion 2 000.00 1 900.00Dutca Radion 3 250.00 1 126.50Florea Nicoleta 2 500.00 2 970.00Gomoja Ilie 3 250.00 599.95Grosu Corina 1 900.00 1 605.40Grosu Leonid 2 500.00 27.75Harea Igor 22 000.00 191.75Lisnic V<strong>la</strong>dimir 351.00 351.00Mutu Livia 15 000.00 1 437.5060
Nume Prenume Suma p<strong>la</strong>nificata Suma acumu<strong>la</strong>taMutu Sorina 3 500.00 26.75Nanu Vasile 4 500.00 473.50Prisacaru Inga 2 750.00 2 243.80Rusu Dorina 3 500.00 309.20Spada Doru 18 000.00 1 231.75Surdu Mihaie<strong>la</strong> 20 000.00 170.75Problema 94:Nume Prenume DiferentaBucataru Constantin -803.20Bucur Nico<strong>la</strong>e 26 583.25Cozma Ion 100.00Dutca Radion 2 123.50Florea Nicoleta -470.00Gomoja Ilie 2 650.05Grosu Corina 294.6Grosu Leonid 2 472.25Harea Igor 21 808.25Lisnic V<strong>la</strong>dimir 0.00Mutu Livia 13 562.50Mutu Sorina 3 473.25Nanu Vasile 4 026.50Prisacaru Inga 506.20Rusu Dorina 3 190.80Spada Doru 16 768.25Surdu Mihaie<strong>la</strong> 19 829.25Problema 95:Nume Prenume FunctiaBucataru Constantin contabilFlorea Nicoleta reprezentantProblema :96Nume Prenume FunctiaBucur Nico<strong>la</strong>e manager61
Nume Prenume FunctiaCozma Ion reprezentantDutca Radion reprezentantGomoja Ilie reprezentantGrosu Corina reprezentantGrosu Leonid reprezentantHarea Igor managerMutu Livia managerMutu Sorina reprezentantNanu Vasile reprezentantPrisacaru Inga reprezentantRusu Dorina reprezentantSpada Doru managerSurdu Mihaie<strong>la</strong> reprezentantProblema 97:Nume Prenume FunctiaLisnic V<strong>la</strong>dimir managerProblema 98:LocalitateaBeltsyProblema 99:LocalitateaEdinetsProblema 100:Nume PrenumeMutu LiviaProblema 101:Nume PrenumeMutu Livia62
ANEXĂPRODUSECod-produs Descriere Pret Exist1 Monitor LG 17 100.00 True2 Monitor Samsung 15 50.00 False3 Televizor JVS 54cm 280.00 False4 Procesor Pentium 4 130.00 True5 Procesor Celeron 2000 125.00 True6 Mouse Genius optic 4.00 False7 Mouse Logitech optic 5.00 True8 Televizor Sony 72cm 485.00 False9 DVD Sony 50 75.00 False10 DVD Sony 32-16-32 135.00 True11 CD-R Benq 700MB 0.10 True12 CD-RW Benq 700MB 0.25 True13 Tastiera Logitech alba 6.75 True14 Tastiera Logitech neagra 9.75 False15 Monitor Samsung 17 85.50 True16 Monitor Samsung 21 109.50 False17 Monitor Samtron 15 35.50 False18 Televizor Alfa 51cm 100.40 True19 Televizor Po<strong>la</strong>r 54cm 200.00 False20 Filtru Sven 220V 3.75 True21 Telefon Siemens A55 85.00 True63
64OFICIICod-oficiu Localitatea Regiunea Codul manageruluiBL Beltsy nord MLC Kishinew centru VDCH Cahul sud HIED Edinets nord MLGL Glo<strong>de</strong>ni nord MLOR Orhei centru LVRZ Rezina nord SDSR Soroca nord BNUN Ungheni centru VDCOMPANIICodcompanieCompania Reprezentantul DatoriacompanieiAL Auto Lada NV 7 500.00AS Asito PI 26 000.00AT Astra PI 14 780.00AV Avon GC 12 000.00BA Basarabia GC 0.00BI Bizpro PI 13 050.00CA Cascad GI 12 300.00FB Floribel GL 600.00FL Floarea GL 0.00IL InLac GI 1 000.00KN Knauf PI 0.00LO Luck Oil NV 13 000.00PA Patria DR 500.00PE Petrom NV 50 000.00TC TransCom MS 6 000.00TI Tirex NV 5 000.00TU Tutun Ind GL 1 000.00VT Vitanta GI 800.00ZO Zorile GT 22 890.00
ANGAJATICodangajatNumePrenumeVirstaFunctiaCoduloficiuluiDataangajariiSumap<strong>la</strong>nificataBC Bucataru Constantin 31 contabil SR 18.01.2001 0BN Bucur Nico<strong>la</strong>e 27 manager SR 31.01.2001 28 000CI Cozma Ion 20 reprezentant OR 17.11.2001 2 000DE Dodon Elena 34 contabil ED 20.02.2000 0DR Dutca Radion 33 reprezentant GL 12.12.1999 3 250FE Frumosu Emilia 37 contabil ED 12.02.1998 0FN Florea Nicoleta 23 reprezentant BL 13.06.2000 2 500GC Grosu Corina 19 reprezentant RZ 04.04.2000 1 900GI Gomoja Ilie 32 reprezentant CH 13.07.2005 3 250GL Grosu Leonid 23 reprezentant ED 28.03.2000 2 500GM Grosu Mihai 42 sef C 07.02.1998 0GT Graur Teodor 35 reprezentant SR 18.08.2004 35 000HI Harea Igor 25 manager CH 30.03.2003 22 000LA Lungu Alexandru 43 sef adjunc C 07.02.1998 0LV Lisnic V<strong>la</strong>dimir 29 manager OR 13.09.2001 351ML Mutu Livia 38 manager BL 09.02.1999 15 000MS Mutu Sorina 35 reprezentant UN 06.04.2004 3 500NV Nanu Vasile 45 reprezentant C 09.02.1998 4 500PI Prisacaru Inga 27 reprezentant UN 18.03.2001 2 750RD Rusu Dorina 35 reprezentant OR 18.09.2001 3 500SA Speriatu Ana 31 contabil GL 15.01.2003 0SD Spada Doru 29 manager RZ 12.01.2003 18 000SM Surdu Mihaie<strong>la</strong> 25 reprezentant BL 12.03.2000 20 000VD Vieru Dorin 32 manager C 08.02.1998 80 000VI Vrabie Ion 42 contabil RZ 18.10.2002 065
TRANZACTIIData Codul Codul Codul Cantitateacomenzii clientului vinzatorului produsului01.01.2005 BI NV 7 501.01.2005 IL PI 15 403.01.2005 VT HI 14 1203.01.2005 ZO GI 12 314.01.2005 VT BN 15 818.01.2005 TI GL 12 331.01.2005 CA GI 11 231.01.2005 VT BN 14 902.02.2005 PE SM 12 211.02.2005 LO SM 2 311.02.2005 TI FN 21 222.02.2005 TI NV 13 202.03.2005 AL LV 17 203.03.2005 FL PI 11 304.03.2005 TI SD 14 312.03.2005 FL PI 8 112.03.2005 VT GI 14 426.03.2005 AS GC 8 326.03.2005 PA SD 12 1004.04.2005 AT DR 11 514.04.2005 FL SM 13 318.04.2005 AS LV 3 118.04.2005 PE BC 18 818.04.2005 TC ML 20 201.05.2005 ZO BN 21 324.05.2005 AT FN 3 1024.05.2005 AV CI 19 213.06.2005 AT GC 9 213.06.2005 PA HI 13 1116.06.2005 FB PI 16 866
Data Codul Codul Codul Cantitateacomenzii clientului vinzatorului produsului04.07.2005 ZO HI 11 511.07.2005 TI PI 15 316.07.2005 FB RD 18 316.07.2005 ZO ML 4 1108.08.2005 LO DR 5 908.08.2005 PA GC 11 416.08.2005 CA CI 5 1216.08.2005 VT NV 17 320.09.2005 KN RD 6 220.09.2005 PA NV 16 310.10.2005 AT MS 11 510.10.2005 VT MS 20 711.11.2005 PE SD 19 612.11.2005 PA DR 12 412.11.2005 PE BN 4 319.11.2005 CA PI 17 812.12.2005 IL GL 13 412.12.2005 TI GI 3 267
BIBLIOGRAFIE1. Vasile Florescu. <strong>Baze</strong> <strong>de</strong> <strong>date</strong>: fundamente teoretice şipractice. Bucureşti: Editura Infomega, 2002. - 548p.2. Vasile Florescu. <strong>Baze</strong> <strong>de</strong> <strong>date</strong>: organizare, proiectare şiimplementare. Bucureşti: Editura Economică, 1995. -348p.3. Ion Lungu. <strong>Baze</strong> <strong>de</strong> <strong>date</strong>: organizare, proiectare şiimplementare. Bucureşti: Editura All, 1995. - 354p.4. Robert Dollinger. <strong>Baze</strong> <strong>de</strong> <strong>date</strong> şi gestiuneatranzacţiilor. Cluj – Napoca: Editura Albastră, 2000. -304p.5. Веймаер Ричард Вильямс. Освой самостоятельноMicrosft SQL – Server за 21 дней. Москва: M, 2001. -704ст.6. Pascu Corina. Totul <strong>de</strong>spre SQL: interogarea bazelor <strong>de</strong><strong>date</strong>. Bucureşti: Editura Tehnică, 1994. - 159p.7. Vasile Florescu. <strong>Baze</strong> <strong>de</strong> <strong>date</strong>: concepere prinnormalizare, <strong>de</strong>zvoltare şi utilizare folosind MicrosoftAccess, interogare în SQL. Bucureşti: EdituraEconomică, 1999. 352p.8. Бьелетич Шарон. Microsoft SQL – Server 2000:энциклопедия пользователя. Москва: DiaSoft, 2001.- 688ст.9. Вишневский Алексей. Microsoft SQL – Server 7 дляпрофесионалов. Питер, СПБ, 2000. - 896ст.68