Sunteți pe pagina 1din 4

Baze de date RECAPITULARE -

EXERCIII RECAPITULATIVE

1. S se creeze tabelele Faculti, Catedre i Persoane pe baza schemei de mai sus, innd cont de urmtoarele: FACULTI Nume coloan Tipul restriciei Tip dat Lungime CATEDRE Nume coloan Tipul restriciei Tip dat Lungime PERSOANE Nume coloan Tipul restriciei CODP Primary key NUME FUNCIA Check DATAANG CODCAT Foreign key - refer tabela Catedre, coloana CODCAT Date Varchar2 7 CODCAT Primary key Varchar2 7 DENCAT Not null Varchar2 40 CODFAC Foreign key - refer tabela Faculti, coloana CODFAC Varchar2 5 CODFAC Primary key Varchar2 5 DENFAC Not null Varchar2 100

Tip dat Lungime

Number 3

Varchar2 30

Varchar2 5

Atributul FUNCIA poate lua valorile: Prof (profesor), Conf (confereniar), Lect (lector), Asist (asistent), Prep (preparator)
1

Baze de date RECAPITULARE -

2. S se redenumeasc tabela Persoane n Angajati. 3. S se adauge n tabela Angajati coloana Salariu, avnd tipul Number(4). 4. S se adauge n tabela Angajati o restricie de integritate avnd numele VerificaSalariu asupra cmpului Salariu, care s nu permit introducerea de valori mai mici dect 1000 si mai mari dect 5000. 5. Modificai proprietile cmpului DenFac din tabela Facultati, astfel nct lungimea acestuia s fie de 60 6. Dezactivai restricia de integritate VerificaSalariu existent n tabela Angajati. 7. S se adauge n tabele urmtoarele informaii: FACULTI CODFAC CSIE CIG COM CATEDRE CODCAT IE CIB EM STAT ANGAJATI CODP 1 2 3 4 5 6 NUME Ionescu Popescu Georgescu Stanescu Tudor Zaharia FUNCIA Prof Prof Asist Conf Lect Prep 04-FEB-2005 23-APR-2002 10-OCT-2001 DATAANG 12-NOV-1994 CODCAT IE CIB IE EM IE EM SALARIU 2200 2000 1000 1400 1500 900 DENCAT Informatica Economica Cibernetica Economica Economie Matematica Statistica si Previziune Economica CODFAC CSIE CSIE CSIE CSIE DENFAC Cibernetica, Statistica si Informatica Economica Contabilitate si Informatica de Gestiune Comert

8. n tabela Angajati modificai n Marinescu numele angajatului cu Codp egal cu 3 (cmpul Nume). 9. n tabela Angajati modificai n Lect funcia angajatului cu Codp egal cu 4 (cmpul Functia).
2

Baze de date RECAPITULARE -

10. n tabela Angajati cretei cu 10% salariile angajailor care au n prezent salariul mai mic dect 1400 (cmpul Salariu). 11. n tabela Angajati modificai codul catedrei (cmpul CodCat) angajatului cu Codp egal cu 4 astfel nct s fie acelasi cu codul catedrei unde este ncadrat angajatul cu Codp egal cu 2, utiliznd clauza SELECT. 12. S se afieze toate informaiile despre Facultati. 13. S se afieze numele i funcia tuturor angajatilor, ordonai descresctor dup nume. 14. S se afieze angajaii al cror nume incepe cu litera S. 15. S se afiseze numele asistenilor i lectorilor (funciile sunt codificate prin Asist, respectiv Lect). 16. S se creeze o tabel virtual avnd numele PersonalCatedre, care s conin pentru fiecare angajat de la catedrele cu codul IE i CIB: numele, funcia i denumirea catedrei. 17. S se afieze salariile maxim, minim i mediu pentru toate persoanele angajate dup anul 2000. 18. S se afieze numrul de persoane de la catedra cu CodCat egal cu IE. 19. S se afieze salariul mediu pentru fiecare catedr. (gruparea se va face n funcie de codul catedrei) 20. S se afieze salariul mediu corespunztor fiecrei funcii, numai n cazul n care acesta depete 1200. 21. S se afieze informaii despre persoanele angajate la aceeai catedr ca i Ionescu. 22. S se afieze persoanele care au salariul mai mare dect salariul mediu. 23. S se afieze denumirea catedrei i numrul de persoane de la fiecare catedr, cu excepia catedrei de Informatic Economic i numai pentru acele catedre care au mai mult de o persoan. 24. S se afieze pentru fiecare funcie numrul de angajai. 25. tergei tuplul corespunztor codului Codp egal cu 2.

Baze de date RECAPITULARE -

1. S se creeze tabelele Faculti, Catedre i Persoane pe baza schemei de mai sus, innd cont
de urmtoarele: create table facultati ( codfac varchar2(5), denfac varchar2(100) not null, constraint pk_fac primary key(codfac) ); create table catedre ( codcat varchar2(7), dencat varchar2(30) not null, codfac varchar2(5), constraint pk_cat primary key(codcat), constraint fk_fac foreign key(codfac) references facultati(codfac) ); create table persoane ( codp number(3), nume varchar2(30), functia varchar2(5), dataang date, codcat varchar2(7), constraint pk_pers primary key(codp), constraint fk_cat foreign key(codcat) references catedre(codcat), constraint ck_functia check(functia in('Prof','Conf','Lect','Asist','Prep')) ); 2. S se adauge n tabele urmtoarele informaii: insert into facultati values ('CSIE','Cibernetica, Statistica si Informatica Economica'); insert into facultati values ('CIG','Contabilitate si Informatica de Gestiune'); insert into facultati values ('COM','Comert'); insert into catedre values ('IE','Informatica Economica','CSIE'); insert into catedre values ('CIB','Cibernetica Economica','CSIE'); insert into catedre values ('EM','Economie Matematica','CSIE'); insert into catedre values ('STAT','Statistica si Previziune Economica','CSIE'); insert into angajati values ('1','Ionescu','Prof',to_date('12-nov-1994','dd-mon-yyyy'),'IE','2200'); insert into angajati values ('2','Popescu','Prof',null,'CIB','2000'); insert into angajati values ('3','Georgescu','Asist',to_date('23-apr-2002','dd-mon-yyyy'),'IE','1000'); insert into angajati values ('4','Stanescu','Conf',to_date('10-oct-2001','dd-mon-yyyy'),'EM','1400'); insert into angajati values ('5','Tudor','Lect',null,'IE','1500'); insert into angajati values ('6','Zaharia','Prep',to_date('04-feb-2005','dd-mon-yyyy'),'EM','900');