Sunteți pe pagina 1din 6
PROBLEMA 2 O firma de telefonie ofera diferite tipuri de abonamente clientilor sai. Firma doreste Sa aiba evidenta acestora si a abonamentelor lor. Fiecare tip de abonament are un pret, o denumire, un numér de minute incluse in abonament si un numar de minute gratuite. Pentru fiecare client se pastreaza CNP-ul, numele, prenumele, adresa si eventual, adresa de email. Un client poate avea mai multe abonamente, fiecare dintre acestea avand un numar de telefon, o data de inceput si o zi de platé a abonamentului. Cerinta: 4) Sa se stearga abonamentul clientului cu numarul de telefon 0789012345. Rezolvare: O solutie posibila este reprezentata prin urmatoarea diagrama: ( CuENT ‘ : . f TIP_ABONAMENT CNP ore caractarizeaza | gan | ‘nume . *denumire | “prsnume "pret i | tadresa *min_incluse | semail aparine A _Aveste *min_gratuite | sail ABONAMENT oe a #nr_telefon *data_inceput ‘s *ziua plata CLIENT! 1730505200190 2650810400258 StrRozelor 15 tr-Parcului 7 Dorian Corina Ioana’ lonescu Dinu TIP_ABONAMENTE : = Denumire | fvlin_Incluse 85 fe) 400 133 ABONAMENTE 1730505200790 _| 400, 18-12-2008 750505200790 te-1z-2008 _| 8 2650870400258 1e-12-2006 | 16 0725678901 0745123123 0789012345 DELETE FROM abonamente WHERE nr_telefon='0789012345’. PROBLEMA3 ¥ PROBLEMA 7"; O firma cu mai multe departamente pregateste in sediul fiecdrui departament o sarbatoare a pomului de Craciun dedicata copiilor angajatilor firme. Astfel e necesara o evidenté a angajatilor din departamente gi a copiilor acestora. Pentru fiecare departament este mentionata denumirea si adresa departamentului, iar pentru copii este important de stiut care sunt baieti si care sunt fete, precum si varsta fiecaruia. Observatie: Dac& un copil are ambii parinti angajati la firma, este inregistrat ca parinte unul singur dintre acestia 4) Sa se afiseze angajatii care au functia “economist” Rezolvare: O solutie posibila este reprezentata diagrama urmatoare. S-a asociat un numar fiecArui copil pentru a diferentia intre ei copiii aceluiasi angajat. COPIL DEPARTAMENT ANGAJAT #nr are apartine| #CNP are apartine) nr “denumire = f-----7 > *nume — Fr--7 7 *nume *adresa *prenume “data_nast *sex *telefon_contact °functie Str. Sibiu nr.4 ... Al. Dumbrava Rosie Nr.3 Marketing 0213303531 Desfacere 1_| 0215816360 Desfacere 2_| 0213303532 lonescu Dinu 03-04-2008 02-08-1995 02-08-1995 11-09-2002 1730505200190 1730505200190 1730505200190 2650810400258 lonescu Marius lonescu Diana lonescu Dan Danciu Sorina SELECT * FROM angajati WHERE functie = ‘economist’; PROBLEMA4 = Se doreste o evident&é a calculatoarelor si a componentelor de calculatoare existente in liceu. Fiecare calculator are un numéar de inventar si, aditional, o eticheté cu o denumire interna stabilité de administrator. Componentele de calculatoare pot s& fac parte din calculatoare sau pot fi pastrate separat, pentru schimbarea unor componente defecte. Orice componenta are o serie gi o data de fabricatie, starea componentei la ultima verificare find consemnata prin "functional" sau "defect. in inventarul scolii, fiecare calculator are asociaté o lista a componentelor ce intra in alcatuirea acestuia. Cerinte: 4) Sa se treaca in starea ‘defect’ componenta cu seria 123321006SD. Rezolvare: O solutie posibilé este reprezentata prin diagrama ce urmeaz&. Dacd numerele de ordine din listele de asociare sunt distincte, se poate alege nr_crt drept cheie primara in locul combinatiei propuse. Modelul propus permite evidenta in timp a configuratiilor calculatoarelor. Daca intereseaza doar asocierea curent& dintre componente si calculatoare, sunt suficiente entitatile CALCULATOR- COMPONENTA aflate in relatie one-to-many. CALCULATOR #nr_inv COMPONENTA #serie — *data_fab LISTA_ASOCIERE *denumire #data_montarii °stare nr_crt *eticheta *marca CALCULATOARE 5201 Shark P2000 HPDirector | MSI 6200 COMPONENTE Stare 123321006SD 18-12-2008 _| CD-ROM 52x functional WMAFD1867095 | 19-07-2003 | HarcDisk 50GB functional 34C98790T 26-02-2008 [HardDisk Laptop | defect - functional 123321006SD 16 14203F 36 18-12-2007, 18-12-2007 18-12-2007 15-09-2008 UPDATE componente SET stare= ‘defect’ WHERE serie = '123321006SD’ >ROBLEMA. \ t / Se doreste 0 evident a calculatoarelor din liceu si a locurilor (salilor) unde sunt acestea amplasate pe parcursul anilor. Fiecare calculator are un numar de inventar si, aditional, © eticheta cu O denumire interna stabilita de administrator. Diferitele locuri din liceu unde se afla calculatoarele se identifica printr-un numar de ordine si o denumire sugestiva. La orice mutare 4 unui calculator dintr-un loc in altul, este consemnata data la care inceteaz vechiul amplasament gi data la care incepe noul amplasament al calculatorului respectiv. Cerinta: 4) Sase afigeze numarul calculatoarelor pentru care eticheta incepe CU *HPO'; posibila este reprezentata prin diagrama ce urmeaza. S-a Rezolvare: O solutic modelat pastrarea *istoriculul” amplasamentelor calculatoarelor. jn lipsa acestuia, erau suficiente entitatile LOCATIE si CALCULATOR aflate in relatie one-to-many. a figureaza CALCULATOR et cel #nr_inv LOCATIE #nr *denumire *eticheta *marca AMPLASAM ENT #data_amplasare edata_mutare Director’ Director2 Lab1 Cancelarie nr foc 7| Data amplasare | Data_mutare er peso | [pas anos | 5082005 Es —fierzams | sot ——Hs00.a008 | SELECT count(*) FROM calculatoare WHERE eticheta like *HPO%’, PROBLEMA 6 La un supermarket se vand diverse produse care se gasesc in stoc. Se doreste s& se tina evidenta in fiecare moment a stocurilor disponibile, precum gi a vanzarilor efectuate. Fiecare produs are un cod de bare, comun pentru toate obiectele de acelasi tip. La cumpararea produselor se emite un bon de cas care are un numar si o daté. Pe un bon se gasesc mai multe produse, pentru fiecare specificandu-se cantitatea cumparata. Cerinta: 4) Sa se micsoreze cu 10 cantitatea din stoc pentru produsul cu codul 102583 Rezolvare: O solutie posibild este reprezentata diagrama urmatoare: PRODUS #cod *denumire *cantitate *pret *producator PRODUSE UPDATE lista_bonuri SET cantitate=cantitate-10 WHERE cod_produs=102583 PROBLEMA 7 Studentii unor facultati sunt repartizati s4 faca practica la anumite firme, fiecare dintre acestia obtinand un calificativ pentru perioada respectiva. La rectorat se doreste s& existe o evidenté a firmelor unde au facut aceasta practica gi calificativele obtinute. Pentru fiecare student se cunosc CNP, numele si prenumele, facultatea. Un anumit student poate sa faca practica de mai multe ori la aceeasi firma dar in ani diferiti. Pentru fiecare perioada de practica este necesar sa se cunoasca anul in care a fost studentul si calificativul obtinut. Se consideré ca nu exist niciun student inscris simultan la doua facultati. Cerinta: 4) Sa se afigeze c&ti studenti de anul 1 au facut practica. Rezolvare: O solutie posibila este reprezentata diagrama urmatoare: STUDENT . - FIRMA #Numar_matricol | Patticipa gazduieste | ecog “numer *denumire *adresa *prenume *data_nasterii “facultatea este pentru este pentru PRACTICA #anul *data_inceput °data_sfarsit °calificativul STUDENT! t—Numar_matricol | Nume Prenume Data_hasteni_ | Facuitatea 1234 Alecu Dan 05-04-1991 Cibermetica 5213 Petre loana 42-09-1892 Finante FIRME CoD Denumire Adresa 12 BRD Str_lon Mihalache or 1 13 BCR Str_Vasile lascar nr. 10 PRACTICA. €od_student | Cod_firma | Data_inceput | Data_sfarsit_[ Anul | Calificativ 1234 12 15-06-2010 31-07-2010 1 FB 1234 12 15-06-2011 31-07-2011 2: FB 5213 13 15-06-2011 1 SELECT count(*) FROM practica WHERE anul=1

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