Sunteți pe pagina 1din 6

BAZE DE DATE SEMINAR 4

EXERCIII RECAPITULATIVE

1. S se creeze tabelele Faculti, Catedre i Persoane pe baza schemei de mai sus, innd
cont de urmtoarele:

FACULTI
Nume coloan CODFAC DENFAC
Tipul restriciei Primary key Not null
Tip dat Varchar2 Varchar2
Lungime 5 100

CATEDRE
Nume coloan CODCAT DENCAT CODFAC
Tipul restriciei Primary key Not null Foreign key - refer tabela
Faculti, coloana CODFAC
Tip dat Varchar2 Varchar2 Varchar2
Lungime 7 40 5

PERSOANE
Nume coloan CODP NUME FUNCIA DATAANG CODCAT
Tipul restriciei Primary key Check Foreign key - refer
tabela Catedre,
coloana CODCAT
Tip dat Number Varchar2 Varchar2 Date Varchar2
Lungime 3 30 5 7

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

1
BAZE DE DATE SEMINAR 4

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 DENFAC
CSIE Cibernetica, Statistica si Informatica Economica
CIG Contabilitate si Informatica de Gestiune
COM Comert

CATEDRE
CODCAT DENCAT CODFAC
IE Informatica Economica CSIE
CIB Cibernetica Economica CSIE
EM Economie Matematica CSIE
STAT Statistica si Previziune Economica CSIE

ANGAJATI
CODP NUME FUNCIA DATAANG CODCAT SALARIU
1 Ionescu Prof 12-NOV-1994 IE 2200
2 Popescu Prof CIB 2000
3 Georgescu Asist 23-APR-2002 IE 1000
4 Stanescu Conf 10-OCT-2001 EM 1400
5 Tudor Lect IE 1500
6 Zaharia Prep 04-FEB-2005 EM 900

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 SEMINAR 4

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.

3
BAZE DE DATE SEMINAR 4

4
BAZE DE DATE SEMINAR 4

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');

5
BAZE DE DATE SEMINAR 4

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');

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