Sunteți pe pagina 1din 27

Colegiul National Ion Minulescu

ATESTAT

Elev: Predeanu Mihai Profesor indrumator: Tandarica Mihaela

Atestat Oracle
Centru de inchiriere masini

2011
1

ATESTAT ORACLE

Centru de inchiriere masini 2011

Elev: Predeanu Mihai Colegiul National Ion Minulescu

2011

Descrierea centrului de inchiriere masini Firma noastra va ofera servicii de inchiriere masini rent a car in Bucuresti . Pentru 2 inchirieri de masini in alte orase decat Bucuresti (pe tot teritoriul Romaniei), se achita o taxa suplimentara de preluare-predare a masinii. In plus oferim servicii de transport dinspre aeroporturi (Henri Coanda Otopeni si Aurel Vlaicu Baneasa) cat si inspre acestea iar la cerere se pot oferi servicii de rezervari camere hotel cat si servicii de turism. Dorim sa va facem calatoriile mai placute in cadrul tarii noastre punandu-va la dispozitie serviciile noastre de inchiriere masini in Romania. Cand inchiriati un automobil de la noi il veti primi in cea mai buna stare de functionare si cu toate dotarile suplimentare. In plus, va oferim asistenta rutiera 24 de ore din 24, pentru orice fel de probleme ar aparea in timp ce conduceti automobilul. Pentru inchiriere masini in Romania pe o perioada de timp mai mare, preturile sunt negociabile. Masina poate fi preluata si returnata la locatia dorita de client. De asemenea, va punem la dispozitie pentru inchiriere masini cu sofer. Firma noastra asigura clientilor profesionalism si de preturi competitive pe o piata competitiva. Firma noastra acopera toata partea de sud si nord a Romaniei si nu numai, astfel puteti beneficia de servicii de inchirieri auto la cele mai bune preturi. La firma noastra gasiti masini de inchiriat care asigura cerintele pietei auto, apreciate in conditiile traficului aglomerat din zonele urbane. Personalul nostru este pregatit astfel incat sa ofere seriozitate, siguranta si incredere. Indiferent ca doriti sa calatoriti in Romania sau in strainatate, pentru afaceri sau in scop turistic, agentia noastra va ofera tot ceea ce aveti nevoie pentru o calatorie placuta si sigura. Garantam calitatea serviciilor oferite, datorita standardului ridicat al autovehiculelor ce le detinem, acestea fiind dotate cu ultimele sisteme de siguranta si confort. Soferii nostrii sunt ghizi, cunoscatori de cel putin o limba straina.

Serviciile oferite de agentia noastra sunt diverse astfel incat sa fie cat mai folositoare. Printre ele amintim : inchirieri masini cu sofer transferuri de la/catre aeroport , gari transferuri catre orice alt oras din Romania excursii in jurul Bucurestiului masini de inchiriat pentru delegatii oficiale inchiriere masini de lux pentru nunti, botezuri sau alte evenimente speciale inchiriere masina pentru tururi de orase excursii in tara Dorim sa va facem calatoriile mai placute in cadrul tarii noastre punandu-va la dispozitie serviciile noastre de inchiriere masini in Romania. Reamintim ca toate masinile de la inchirieri auto beneficiaza de asigurare completa CASCO, rovigneta platita, si sunt periodic supuse verificarilor tehnice. Preturile noastre includ TVA si toate taxele, cu exceptia combustibilului . Masina se livreaza cu plinul facut de sucursala de rent a car, si trebuie returnata in aceleasi conditii. Recomandam clientilor nostri sa plaseze rezervarea pentru inchirieri masini cu minim 48 de ore inainte de data livrarii pentru a putea asigura masina ceruta. Pentru a nu intampina probleme si a nu ne dezamagi clientii, ne dirijam intreaga activitatea dupa principiul transparentei. In activitatea noastra de inchirieri masini, satisfacerea exigentelor clientilor nostri reprezinta obiectivul numarul unu si de aceea ne-am dezvoltat permanent activitatea si ne-am adaptat continuu cerintelor pietei de profil. Numai la noi veti putea sa gasiti exact masina care sa se potriveasca cerintelor dumneavoastra si care sa aiba dotarile necesare pentru a creea confortul dorit. Astfel, satisfacerea cerintelor clientilor nostri a devenit un adevarat hobby. Indiferent de modelul ales veti constata ca masinile parcului nostru auto sunt modern dotate, oferindu-va conforul dorit. Centrul de inchiriere va poate oferi masina potrivita pentru orice ocazie in cel mai scurt timp. Masinile din cadrul centrului de inchiriere sunt dotate cu clima, ABS, airbag, radio CD precum si alte accesorii care sunt menite pentru a crea confortul dumneavoastra si al celor dragi. Puteti inchiria o masina pentru excursii la munte, cu tractiune 4X4, pentru o vacanta la mare sau pentru o intalnire de afaceri. Pentru clientii fideli si pentru cei care doresc inchirierea

masinii pe o perioada indelungata, oferim discouturi generoase. Pentru ca dumneavoastra sa nu intampinati nicio problema in decursul calatoriei cu masina, vom avea grija ca toate detaliile sa fie bine puse la punct. Bunul nostru renume depinde in mod direct de calitatea autoturismelor oferite spre inchiriere. Acordam maxima atentie intretinerii parcului nostru auto. Cand inchiriati un automobil de la noi, il veti primi in cea mai buna stare de functionare si cu toate dotarile suplimentare. In plus, va oferim asistenta rutiera 24 de ore din 24, pentru orice fel de probleme ar aparea in timp ce conduceti automobilul pe parcursul inchirierii.

Aplicaia gestioneaz ieirile de autoturisme pentru modelele avute in evident centrului de inchiriere de masini. Se vor evidenia clienii, facturile, autoturismele i stocurile aferente acestora. Activitile se refer la vnzarea de autoturisme. Operaiunile puse la dispoziie de aplicaie vor avea n vedere diferite situaii i rapoarte referitoare la stocuri, clieni i preuri. Aplicaia va permite operatorului: Afiarea tuturor informaiilor posibile referitoare la un anumit autoturism. Prezentarea situaiei celor mai multe modele vndute. Afiarea anumitor tipuri de clieni (dupa jude, adres, vrst etc.). Prezentarea unor informaii referitoare la facturile ntocmite pn n prezent. Intrrile i ieirile sistemului informatizat Intrri: Situaia iniial a stocurilor, conform fielor de magazie. Informaii despre clieni. Informaii despre vnzare (cine a cumprat, ce model) conform facturilor fiscale. Prelucrri: Diminuarea stocurilor n uma vnzarilor. Valoarea stocurilor. Afiarea autoturismelor care au stocul sub stocul de siguran. Ieiri:

Situaia stocurilor, dup o vnzare. Lista clienilor din diferite zone. Lista celor mai vndute produse i alte rapoarte.

Obiective operaionale Prin introducerea sistemului informatic se urmarete facilitarea emiterii de rapoarte ctre departamentul de management i/sau cel de contabilitate. Exemple: periodic, ctre compartimentul financiar-contabil al firmei se poate emite o situaie a facturilor. o situaie cu cele mai vndute sau mai puin vndute modele ctre departamentul de marketing. Se face, n acest scop suma modelelor vndute, conform facturilor emise

Descrirea bazei de date

Tema proiectului o reprezinta gestiunea unui centru de inchiriere de masini, si pentru aceasta am folosit urmatoarele tabele: TARI, FURNIZORI, AUTOTURISME, LISTA_COMENZI, COMENZI, CLIENTI. Tabela TARI are urmatoarea structura: id_tara number(5), denumire varchar2(25), continent varchar2 (20). Cheia primara o reprezinta id_tara. Tabela FURNIZORI are urmatoarea structura: cod_furnizor number(5), nume_furnizor varchar2(20),adresa varchar2(30), email varchar2(20), telefon number(10), id_tara number(5). Cheia primara este cod_furnizor iar id_tara si codeste foreign key pentru tabela TARI. O tara poate contine mai multi furnizori. Tabela AUTOTURISME are urmatoarea structura: cod_auto number(5), cod_furnizor number(5), denumire varchar2(20), categorie varchar2(20), pret_max number(5), pret_min number(5), pret_cump number(5). Cheia primara o reprezinta cod_auto. Tabela LISTA_COMENZI are urmatoarea structura : nr_comanda number(5), cod_auto number(5), pret number(8,2), cantitate number(8). Cheia primara este nr_comanda. Tabela COMENZI are urmatoarea structura: nr_comanda number(5), data date, modalitate varchar2(20), id_client number(6), stare_comanda varchar2(20). Tabela CLIENTI are urmatoarea structura: id_client number(6), prenume_client varchar2(20), nume_client vachar2(20), telefon varchar2(20), limita_credit number(9,2), email_client varchar2(20),data_nastere date. Cheia primara este id_client. Fiecare tara apartine unui continent, iar o tara poate avea sau nu furnizori. Furnizorii sunt inregistrati cu anumite informatii iar fiecare furnizor poate produce mai multe masini, sau nici una. Aceste vehicole sunt retinute in tabela AUTOTURISME impreuna cu cod lor, denumirea , categoria din care fac parte , codul furnizorului, pretul de achizitie al acestora (pret_cump), dar si de pretul minim si pretul maxim la care pot fi vandute. Datele clientilor sunt retinute in tabela CLIENTI unde se retin informatii precum numele acestora, prenumele, data de nastere, email-ul, telefonul si limita de credit a acestora. Un client poate realiza o comanda sau nu. Datele comenzilor sunt retinute in tabela COMENZI unde se retin informatii precum numarul comenzii(numar unic), modalitatea de plata, id-ul clientului care a realizat comanda si starea comenzii(daca a fost sau nu efectuata). Tabela LISTA_COMENZI contine informatii precum pretul de cumpararea si cantitatea cumparata. Programul in cod SQL

DROP TABLE AUTOTURISME CASCADE CONSTRAINTS; DROP TABLE LISTA_COMENZI CASCADE CONSTRAINTS; DROP TABLE COMENZI CASCADE CONSTRAINTS; DROP TABLE CLIENTI CASCADE CONSTRAINTS; DROP TABLE FURNIZORI CASCADE CONSTRAINTS; DROP TABLE TARI CASCADE CONSTRAINTS; prompt Creating table TARI create table TARI ( ID_TARA NUMBER (5), DENUMIRE_TARA VARCHAR2(25), CONTINENT VARCHAR(20) ); alter table TARI add constraint TARA_PK primary key (ID_TARA); alter table TARI add constraint ID_TARA_NN check ("ID_TARA" IS NOT NULL); prompt Creating table FURNIZORI create table FURNIZORI (COD_FURNIZOR number(5) NOT NULL, NUME_FURNIZOR varchar2(20) not null, ADRESA varchar2(30), EMAIL varchar2(20), TELEFON NUMBER(10), ID_TARA NUMBER(5) ); alter table FURNIZORI add constraint FURNIZ_PK primary key (COD_FURNIZOR);

alter table FURNIZORI add constraint FURNIZ2_FK foreign key (ID_TARA) references TARI (ID_TARA) on delete set null; prompt Creating table AUTOTURISME create table AUTOTURISME (COD_AUTO number(5) not null , COD_FURNIZOR NUMBER(5) NOT NULL, DENUMIRE varchar2(30) not null, CATEGORIE varchar2(20), PRET_MAX NUMBER(7), PRET_MIN NUMBER(7) NOT NULL, PRET_CUMP NUMBER(7) ); alter table AUTOTURISME add constraint pl_PK primary key (COD_AUTO); alter table AUTOTURISME add constraint AUTO_FK foreign key (COD_FURNIZOR) references FURNIZORI (COD_FURNIZOR) ; prompt Creating table CLIENTI create table CLIENTI ( ID_CLIENT NUMBER(6) not null, PRENUME_CLIENT VARCHAR2(20), NUME_CLIENT VARCHAR2(20), TELEFON VARCHAR2(20), LIMITA_CREDIT NUMBER(9,2), EMAIL_CLIENT VARCHAR2(30), DATA_NASTERE DATE );

alter table CLIENTI add constraint CLIENTI_PK primary key (ID_CLIENT); alter table CLIENTI add constraint LIMITA_CREDIT_MAX check (LIMITA_CREDIT <= 10000); alter table CLIENTI add constraint NUME_NN check ("NUME_CLIENT" IS NOT NULL); alter table CLIENTI add constraint PRENUME_NN check ("PRENUME_CLIENT" IS NOT NULL); prompt Creating table COMENZI create table COMENZI ( NR_COMANDA NUMBER(5) not null, DATA ID_CLIENT ); alter table COMENZI add constraint NR_COMANDA_PK primary key (NR_COMANDA); alter table COMENZI add constraint ID_CLIENT_FK foreign key (ID_CLIENT) references CLIENTI (ID_CLIENT) on delete set null; alter table COMENZI add constraint DATA_NN check ("DATA" IS NOT NULL); alter table COMENZI add constraint ID_CLIENT_NN check ("ID_CLIENT" IS NOT NULL); alter table COMENZI DATE, NUMBER(6), MODALITATE VARCHAR2(20), STARE_COMANDA VARCHAR2(20)

add constraint MODALITATE_CK check (MODALITATE in ('cash','transfer bancar','credit')); prompt Creating table LISTA_COMENZI create table LISTA_COMENZI ( NR_COMANDA NUMBER(5) not null constraint PKey_LISTA primary key, COD_AUTO NUMBER(5) not null, PRET ); alter table LISTA_COMENZI add constraint LISTA_FK foreign key (COD_AUTO) references AUTOTURISME (COD_AUTO); alter table LISTA_COMENZI add constraint LISTAC_FK foreign key (NR_COMANDA) references COMENZI (NR_COMANDA) on delete cascade; Comenzi de modificare a tabelelor Sa se elimine restrictia conform careia prenumele clientilor nu trebuie sa fie null, din tabela CLIENTI. alter table CLIENTI drop constraint PRENUME_NN; Sa se restrictioneze valorile pe care le poate lua campul data comenzii din tabela COMENZI, astfel incat anul sa fie mai mare de 2000. alter table COMENZI add constraint data_check check (extract (year from data)>2000); Sa se adauge o noua coloana Stoc la tabela AUTOTURISME. NUMBER(8,2), CANTITATE NUMBER(8)

alter table AUTOTURISME add stoc number(20); Sa se modifice campul coloanei Stoc in varchar(20) din tabela AUTOTURISME alter table AUTOTURISME modify stoc varchar(20); Sa se stearga o coloana Stoc din tabela AUTOTURISME alter table AUTOTURISME drop column stoc; Sa se modifice numele tabelei AUTOTURISME in MASINI si din MASINI in AUTOTURISME alter table AUTOTURISME rename to MASINI; alter table MASINI rename to AUTOTURISME; Sa se stearga inregistrarile existente in tabele pentru a se popula baza de date cu noi elemente. prompt Se sterg datele din tabele..... delete from LISTA_COMENZI; delete from COMENZI; delete from AUTOTURISME; delete from TARI; delete from FURNIZORI; delete from CLIENTI; Sa se populeze baza de date. prompt Se introduc datele in tabelA TARI..... insert into TARI values('101','OLANDA','EUROPA');

insert into TARI values('102','ITALIA','EUROPA'); insert into TARI values('103','SPANIA','EUROPA'); insert into TARI values('104','PORTUGALIA','EUROPA'); insert into TARI values('105','FRANTA','EUROPA'); insert into TARI values('106','AUSTRIA','EUROPA'); insert into TARI values('107','GRECIA','EUROPA'); insert into TARI values('108','BELGIA','EUROPA'); insert into TARI values('109','ANGLIA','EUROPA'); insert into TARI values('110','SUEDIA','EUROPA'); insert into TARI values('111','INDIA','ASIA'); insert into TARI values('112','CHINA','ASIA'); insert into TARI values('113','JAPONIA','ASIA'); insert into TARI values('114','SUA','AMERICA'); insert into TARI values('115','MEXIC','AMERICA'); insert into TARI values('116','COLUMBIA','AMERICA'); insert into TARI values('117','VENEZUELA','AMERICA'); insert into TARI values('118','GERMANIA','EUROPA'); insert into TARI values('119','CANADA','AMERICA'); insert into TARI values('120','RUSIA','EUROPA'); commit;

prompt Se introduc datele in tabela CLIENTI..... insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (130, 'ION', 'VASILE', null, 600, 'vasile.ion@yahoo.com', to_date('21-03-1978', 'dd-mmyyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (131, 'OCTAVIAN', 'MARINESCU', 0723456273, 1000, 'marinescu.octavian@yahoo.com', to_date('02-07-1977', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE)

values (132, 'BOGADN', 'VALCOCI', 076234516, 550, 'valcoci.bogdan@yahoo.com', to_date('11-10-1981', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (133, 'MARIA', 'NASTASE', 074567890, 760, 'nastase.maria@yahoo.com', to_date('1505-1985', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (134, 'IOANA', 'VASILE', null, 1200, 'vasile.ioana@yahoo.com', to_date('21-07-1980', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (135, 'COSMIN', 'POPESCU', 076268134, 900, 'popescu.cosmin@yahoo.com', to_date('09-12-1979', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (136, 'IONUT', 'SOARE', 07543875, 1500, 'soare.ionut@yahoo.com', to_date('13-121988', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (137, 'ALEXANDRU', 'ISAILA', 072341325, 950, 'isaila.alexandru@yahoo.com', to_date('09-08-1977', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (138, 'DANA', 'POPA', 074279367, 1300, 'popa.dana@yahoo.com', to_date('09-121984', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (139, 'SILVIU', 'RADAUT', 076268134, 900, 'radaut.silviu@yahoo.com', to_date('0808-1988', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (140, 'ALEXANDRA', 'MARIN', 072134753, 1700, 'marin.alexandra@yahoo.com', to_date('19-05-1984', 'dd-mm-yyyy'));

insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (141, 'ANDREEA', 'LANDER', 072278753, 790, 'lander.andreea@yahoo.com', to_date('17-02-1986', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (142, 'OANA', 'IONESCU', 072134753, 670, 'ionescu.oana@yahoo.com', to_date('2705-1985', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (143, 'MARINA', 'BLEOTU', 074179753, 950, 'bleotu.marina@yahoo.com', to_date('3101-1986', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (144, 'MIHAI', 'BADEA', 072134753, 1700, 'badea.mihai@yahoo.com', to_date('19-071986', 'dd-mm-yyyy')); insert into CLIENTI (ID_CLIENT, PRENUME_CLIENT, NUME_CLIENT, TELEFON, LIMITA_CREDIT, EMAIL_CLIENT, DATA_NASTERE) values (145, 'ROBERT', 'TANASE', 074521372, 840, 'tanase.robert@yahoo.com', to_date('1112-1981', 'dd-mm-yyyy')); commit; prompt Se introduc datele in tabela COMENZI..... insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT,

STARE_COMANDA) values (1001, to_date('17-08-2005', 'dd-mm-yyyy'), 'cash', 131, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1002, to_date('23-12-2005', 'dd-mm-yyyy'), 'credit', 144, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1003, to_date('24-12-2005', 'dd-mm-yyyy'), 'cash', 132, 'efectuata');

insert

into

COMENZI

(NR_COMANDA,

DATA,

MODALITATE,

ID_CLIENT,

STARE_COMANDA) values (1004, to_date('12-02-2006', 'dd-mm-yyyy'), 'cash', 131, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1005, to_date('23-03-2006', 'dd-mm-yyyy'), 'transfer bancar', 135, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1006, to_date('17-04-2006', 'dd-mm-yyyy'), 'cash', 133, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1007, to_date('24-05-2006', 'dd-mm-yyyy'), 'cash', 131, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1008, to_date('08-08-2006', 'dd-mm-yyyy'), 'credit', 137, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1009, to_date('17-08-2006', 'dd-mm-yyyy'), 'cash', 131, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1010, to_date('17-12-2006', 'dd-mm-yyyy'), 'transfer bancar', 142, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1011, to_date('25-04-2007', 'dd-mm-yyyy'), 'cash', 142, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1012, to_date('30-09-2007', 'dd-mm-yyyy'), 'credit', 145, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1013, to_date('19-01-2008', 'dd-mm-yyyy'), 'cash', 142, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1014, to_date('17-03-2008', 'dd-mm-yyyy'), 'credit', 137, 'efectuata');

insert

into

COMENZI

(NR_COMANDA,

DATA,

MODALITATE,

ID_CLIENT,

STARE_COMANDA) values (1015, to_date('23-07-2008', 'dd-mm-yyyy'), 'transfer bancar', 131, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1016, to_date('17-10-2008', 'dd-mm-yyyy'), 'cash', 145, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1017, to_date('24-10-2008', 'dd-mm-yyyy'), 'credit', 131, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1018, to_date('14-11-2008', 'dd-mm-yyyy'), 'credit', 142, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1019, to_date('23-11-2008', 'dd-mm-yyyy'), 'cash', 145, 'efectuata'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1020, to_date('30-11-2008', 'dd-mm-yyyy'), 'cash', 136, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1021, to_date('10-12-2008', 'dd-mm-yyyy'), 'credit', 133, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1022, to_date('18-12-2008', 'dd-mm-yyyy'), 'cash', 145, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1023, to_date('22-12-2008', 'dd-mm-yyyy'), 'transfer bancar', 136, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1024, to_date('4-02-2009', 'dd-mm-yyyy'), 'credit', 144, 'in asteptare'); insert into COMENZI (NR_COMANDA, DATA, MODALITATE, ID_CLIENT, STARE_COMANDA) values (1025, to_date('7-01-2009', 'dd-mm-yyyy'), 'cash', 140, 'in asteptare'); commit;

prompt Se introduc datele in tabelA FURNIZORI..... insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2001, 'FORD', 'STR. Revolutiei', 'ford@yahoo.com',null,101); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2002, 'MERCEDES', 'STR. LIBERTATII', 'MERCEDES@yahoo.com',07243676,119); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2003, 'BMW', 'STR. EROIILOR', 'BMW@yahoo.com',075696778,115); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2004, 'AUDI', 'STR. M.BROWN', 'AUDI@yahoo.com',0732444680,113); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2005, 'SKODA', 'STR. LIBERTY', 'SKODA@yahoo.com',079057685,114); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2006, 'OPEL', 'STR. DUST', 'OPEL@yahoo.com',null,110); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2007, 'DACIA', 'STR. Elizabeth', 'DACIA@yahoo.com',012376586,102); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2008, 'VOLKSWAGEN', 'STR. Peace', 'VOLKSWAGEN@yahoo.com',076423311,105); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) values (2009, 'FERRARI', 'STR. Blue', 'ferrari@yahoo.com',null,107); insert into FURNIZORI (COD_FURNIZOR, TELEFON, ID_TARA) NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL, NUME_FURNIZOR, ADRESA, EMAIL,

values (2010, 'HYUNDAI', 'STR. Life', 'hyundai@yahoo.com',null,117);

prompt Se introduc datele in tabelA AUTOTURISME..... insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3001, 2001, 'VOLKSWAGEN GOLF', 'GOLF',100000,20000,15000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3015, 2001, 'FOR FOCUS', 'GOLF',100000,40000,35000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3002, 2002, 'FORD FIESTA', 'GOLF',70000,20000,20000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3003, 2003, 'MINI COOPER', 'CABRIO',150000,80000,50000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3004, 2004, 'MERCEDES CLK', 'CABRIO',100000,50000,45000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3005, 2005, 'PEUGEOT 307CC', 'CABRIO',150000,40000,35000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3006, 2006, 'SUZUKI GRAND VITARA', 'SUV',65000,20000,10000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3007, 2007, 'JEEP PATRIOT', 'SUV',140000,50000,45000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3008, 2007, 'JEEP COMPASS', 'SUV',200000,100000,90000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP)

values (3009, 2008, 'RENAULT SEDAN', 'SEDAN',300000,100000,95000 ); insert into AUTOTURISME (COD_AUTO, COD_FURNIZOR, DENUMIRE, CATEGORIE, PRET_MAX, PRET_MIN, PRET_CUMP) values (3010, 2009, 'CHEVROLET AVEO', 'SEDAN',70000,20000,15000 ); prompt Se introduc datele in tabela LISTA_COMENZI..... insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1001, 3001, 50, 60); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1002, 3003, 100, 10); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1003, 3010, 25, 160); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1004, 3008, 150, 5); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1012, 3001, 50, 60); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1006, 3013, 50, 60); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1013, 3001, 55, 50); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1008, 3005, 75, 30); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1009, 3009, 250, 3); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1010, 3012, 34, 40); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1011, 3011, 80, 20); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1015, 3006, 30, 80); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1014, 3005, 80, 45); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE)

values (1019, 3002, 35,100); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1022, 3013, 200, 150); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1023, 3015, 65, 110); insert into LISTA_COMENZI (NR_COMANDA, COD_AUTO, PRET, CANTITATE) values (1025, 3007, 75, 80); commit; DROP TABLE AUTOTURISME1 CASCADE CONSTRAINTS; DROP TABLE AUTOTURISMEMAX CASCADE CONSTRAINTS; DROP TABLE AUTOTURISMEMIN CASCADE CONSTRAINTS; Comenzi de actualizare a tabelelor Sa se creeze o noua tabela AUTOTURISME1 cu aceeasi structura cu a tabelei AUTOTURISME care sa contina informatii despre masinile cu pretul_max mai mare de 70000$. create table AUTOTURISME1 as select * from AUTOTURISME where 2=3; insert into AUTOTURISME1 select * from AUTOTURISME where pret_max<=70000; Sa se creeze 2 tabele AUTOTURISMEMIN si AUTOTURISMEMAX cu aceeasi structura ca a tabelei AUTOTURISME care sa contina informatii despre masini: in prima tabela cele care au pret_min cuprins intre 10000$ si 65000$, iar cea de-a doua au pret_min cuprins intre 65000$ si 200000$. create table AUTOTURISMEMIN as select * from AUTOTURISME where 2=3; create table AUTOTURISMEMAX as select * from AUTOTURISME where 2=3; insert into AUTOTURISMEMIN select * from AUTOTURISME where pret_min between 10000 and 65000; insert into AUTOTURISMEMAX select * from AUTOTURISME where pret_min between 65000 and 200000;

Sa se modifice campul id_furnizor din tabela AUTOTURISME pentru masina cu codul 3004 atrinuindu-i valoarea 2004 update AUTOTURISME set cod_furnizor=2004 where cod_auto=3004; Sa se modifice campul data din tabela AUTOTURISME cu data actuala pentru cele din anul 2009 update COMENZI set data=sysdate where extract(year from data)=2009; Sa se modifice campurile pret si cantitate din tabele LISTA_COMENZI pentru nr_comanda=1007, astfel incat pretul sa creasca cu 10% iar cantitatea sa scada cu 15% update LISTA_COMENZI set pret=pret*1.1, cantitate=cantitate*0.85 where

nr_comanda=1007; Sa se modifice campurile pret_max si pret_min din tabele AUTOTURISME astfel incat pret_min sa creasca cu 5% iar pret_max sa creasca 10% pentru cele care au categoria asemanatoare cu "cabrio" update AUTOTURISME set pret_min=pret_min*1.05, pret_max=pret_max*1.1 where upper(categorie) like '%CABRIO%'; Sa se modifice campul stare_comanda in "efectuata" din tabela COMENZI pentru inregistrarile mai vechi de 2007 update COMENZI set stare_comanda='efectuata' where extract(year from data)<2007; Sa se actualizeze pretul minim si pretul maxim masinilor cu pretul minim si pretul maxim al masinii cu codul 3003 numai pentru vehicolele comandate in cantitate mai mare de 50.

update AUTOTURISME set (pret_min, pret_max)=( select pret_min, pret_max from AUTOTURISME where cod_auto=3003) where cod_auto in (select cod_auto from LISTA_COMENZI where cantitate>=50); Sa se actualizeze limita_credit a clientului cu numele Soare cu cea a clientului cu id-ul 137. update CLIENTI set limita_credit=( select limita_credit from CLIENTI where id_client=137) where upper(nume_client)='SOARE'; Sa se stearga datele din tabela LISTA_COMENZI pentru masinile inchiriate in cantitate mai mica de 40. delete from LISTA_COMENZI where cantitate<40; Sa se stearga datele din tabela LISTA_COMENZI masinile cu codul 3011 .Stergerile sa nu fie realizate imediat, ulterior sa se renunte la aceste stergeri. set autocommit off delete from LISTA_COMENZI where cod_auto in (select cod_auto from LISTA_COMENZI where cod_auto=3011);

Sa se stearga datele clientilor care au limita_credit mai mica sau egala de 300. delete from CLIENTI where limita_credit<300;

Sa se actualizeze tabela AUTOTURISMEMAX astfel incat pret_min sa fie egal cu pret_min mediu din tabela AUTOTURISME. Apoi sa se realizeze o actualizare prin comparatie intre tabela AUTOTURISMEMAX si AUTOTURISME astfel incat cele doua tabele sa contina date identice.

update

AUTOTURISMEMAX

set

pret_min=(

select

avg(pret_min)

from

AUTOTURISME); merge into AUTOTURISMEMAX using AUTOTURISME on AUTOTURISMEMAX.cod_auto=AUTOTURISME.cod_auto when matched then update AUTOTURISMEMAX.pret_min=AUTOTURISME.pret_min when not matched then insert into AUTOTURISMEMAX; Sa se selecteze furnizorii care sunt din aceeasi tara cu furnizorul 'Ford' . select * from furnizori where id_tara=( select id_tara from furnizori where upper(nume_furnizor)='FORD'); Sa se selecteze masinile care au pretul maxim egal cu media preturilor din lista de comenzi. select autoturisme.denumire, lista_comenzi.pret from autoturisme, lista_comenzi where pret_max=( select avg(pret) from lista_comenzi); Sa se afiseze valoarea totala a comenzilor din anul 2008. select sum(lista_comenzi.pret*lista_comenzi.cantitate) from lista_comenzi, comenzi where data)=2008; Sa se afiseze cate masini de fiecare fel s-au inchiriat. select cod_auto,avg(cantitate) from lista_comenzi group by cod_auto order by avg(cantitate); lista_comenzi.nr_comanda=comenzi.nr_comanda and extract(year from

Sa se afiseze denumirea si categoria masinilor care nu au fost inchiriate; select 'Masina '||denumire|| 'din categoria '|| categorie from autoturisme where cod_auto not in (select cod_auto from lista_comenzi); Sa se afiseze furnizorii din continentele al caror nume incepe cu litera A. select furnizori.nume_furnizor,tari.continent from furnizori,tari where furnizori.id_tara=tari.id_tara and substr(continent,1,1)='A'; Sa se afiseze comenzile incheiate in 2005. Se va rotunji data la prima zi din luna corespunzatoare daca data este in prima jumatatea a lunii sau la prima zi din luna urmatoare. select nr_comanda, data, round(data, 'month') from comenzi where extract(year from data)=2005; Sa se adauge o noua coloana Stoc la tabela AUTOTURISME alter table AUTOTURISME add stoc number(20);

Sa se calculeze diferit stocul pentru masini astfel: daca face parte din categoria golf stocul este de 1500, daca face parte din categoria cabrio stocul este de 2000.

select a.cod_auto,a.denumire, decode (upper(a.categorie),'GOLF',1500,'CABRIO',2000,0) stoc from autoturisme a;

Sa se modifice cantitatea inchriata in functie de pretul minim al masini astfel: daca pretul este mai mic de 50000 atunci cantitatea comandata este de 200; daca pretul este intre 50000 si 95000 atunci cantitatea comandata este de 150; daca pretul este intre 95000 si 150000 atunci cantitatea comandata este de 100;

select a.cod_auto,a.denumire,a.pret_min,l.cantitate, case when pret_min<50000 then 200 when pret_min>50000 and pret_min<=95000 then 150 when pret_min>95000 and pret_min<=150000 then 100 else 50 end cantitate from autoturisme a, lista_comenzi l where a.cod_auto=l.cod_auto;

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