-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathempresa.sql
112 lines (99 loc) · 5.23 KB
/
empresa.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
CREATE TABLE FUNCIONARIO (
Pnome VARCHAR(20) NOT NULL,
Minicial CHAR(1) NOT NULL,
Unome VARCHAR(20) NOT NULL,
Cpf CHAR(11) NOT NULL,
Datanasc DATE NOT NULL,
Endereco VARCHAR(40) NOT NULL,
Sexo CHAR(1) NOT NULL,
Salario numeric(20,2) NOT NULL,
Cpf_supervisor CHAR(11) NULL,
Dnr INT NOT NULL,
PRIMARY KEY (Cpf));
CREATE TABLE DEPARTAMENTO (
Dnome VARCHAR(20) NOT NULL,
Dnumero INT NOT NULL,
Cpf_gerente CHAR(11) NOT NULL,
Data_inicio_gerente DATE NOT NULL,
PRIMARY KEY (Dnumero),
UNIQUE(Dnome),
FOREIGN KEY (Cpf_gerente) REFERENCES FUNCIONARIO(Cpf));
CREATE TABLE LOCALIZACAO_DEP (
Dnumero INT NOT NULL,
Dlocal VARCHAR(20) NOT NULL,
PRIMARY KEY (Dnumero, Dlocal),
FOREIGN KEY(Dnumero) REFERENCES DEPARTAMENTO(Dnumero));
CREATE TABLE PROJETO (
Projnome VARCHAR(20) NOT NULL,
Projnumero INT NOT NULL,
Projlocal VARCHAR(20) NOT NULL,
Dnum INT NOT NULL,
PRIMARY KEY (Projnumero),
UNIQUE (Projnome),
FOREIGN KEY (Dnum) REFERENCES DEPARTAMENTO (Dnumero));
CREATE TABLE TRABALHA_EM (
Fcpf CHAR(11) NOT NULL,
Pnr INT NOT NULL,
Horas numeric(3,1) NULL,
PRIMARY KEY(Fcpf,Pnr),
FOREIGN KEY (Fcpf) REFERENCES FUNCIONARIO (Cpf),
FOREIGN KEY (Pnr) REFERENCES PROJETO(Projnumero));
CREATE TABLE DEPENDENTE (
Fcpf CHAR(11) NOT NULL,
Nome_dependente VARCHAR(20) NOT NULL,
Sexo CHAR(1) NOT NULL,
Datanasc DATE NOT NULL,
Parentesco VARCHAR(7) NOT NULL,
PRIMARY KEY(Fcpf, Nome_dependente),
FOREIGN KEY (Fcpf) REFERENCES FUNCIONARIO (Cpf));
INSERT INTO FUNCIONARIO VALUES('Joao', 'B', 'Silva', '12345678966', '1965-01-09', 'Rua das Flores, 751, Sao Paulo, SP', 'M', '30000', '33344555587', '5');
INSERT INTO FUNCIONARIO VALUES('Fernando', 'T', 'Wong', '33344555587', '1955-12-08', 'Rua da Lapa, 34, Sao Paulo, SP', 'M', '40000', '88866555576', '5');
INSERT INTO FUNCIONARIO VALUES('Alice', 'J', 'Zelaya', '99988777767', '1968-01-19', 'Rua Souza Lima, 54, Curtiba, PR', 'F', '25000', '98765432168', '4');
INSERT INTO FUNCIONARIO VALUES('Jeniffer', 'S', 'Souza', '98765432168', '1941-06-20', 'Av. Arthur de Lima, 54, Santo André, SP', 'F', '43000', '88866555576', '4');
INSERT INTO FUNCIONARIO VALUES('Ronaldo', 'K', 'Lima', '66688444476', '1962-09-15', 'Rua Reboucas, 65, Piracicaba, SP', 'M', '38000', '33344555587', '5');
INSERT INTO FUNCIONARIO VALUES('Joice', 'A', 'Leite', '45345345376', '1972-07-31', 'Av. Lucas Obes, 74, Sao Paulo, SP', 'F', '25000', '33344555587', '5');
INSERT INTO FUNCIONARIO VALUES('Andre', 'V', 'Pereira', '98798798733', '1969-03-29', 'Rua Timbira, 35, Sao Paulo, SP', 'M', '25000', '98765432168', '4');
INSERT INTO FUNCIONARIO VALUES('Jorge', 'E', 'Brito', '88866555576', '1937-11-10', 'Rua do Horto, 35, Sao Paulo, SP', 'M', '55000', NULL, '1');
INSERT INTO DEPARTAMENTO VALUES('Pesquisa', '5', '33344555587', '1988-05-22');
INSERT INTO DEPARTAMENTO VALUES('Administracao', '4', '98765432168', '1995-01-01');
INSERT INTO DEPARTAMENTO VALUES('Matriz', '1', '88866555576', '1981-06-19');
ALTER TABLE FUNCIONARIO
ADD CONSTRAINT FUNCIONARIO_FK_TRABALHA_PARA
FOREIGN KEY(Dnr) REFERENCES DEPARTAMENTO(Dnumero);
ALTER TABLE FUNCIONARIO
ADD CONSTRAINT FUNCIONARIO_FK_SUPERVISAO
FOREIGN KEY (Cpf_supervisor) REFERENCES FUNCIONARIO(Cpf);
INSERT INTO LOCALIZACAO_DEP VALUES('1', 'Sao Paulo');
INSERT INTO LOCALIZACAO_DEP VALUES('4', 'Maua');
INSERT INTO LOCALIZACAO_DEP VALUES('5', 'Santo Andre');
INSERT INTO LOCALIZACAO_DEP VALUES('5', 'Itu');
INSERT INTO LOCALIZACAO_DEP VALUES('5', 'Sao Paulo');
INSERT INTO PROJETO VALUES('ProdutoX', '1', 'Santo Andre', '5');
INSERT INTO PROJETO VALUES('ProdutoY', '2', 'Itu', '5');
INSERT INTO PROJETO VALUES('ProdutoZ', '3', 'Sao Paulo', '5');
INSERT INTO PROJETO VALUES('Informatizacao', '10', ' Maua', '4');
INSERT INTO PROJETO VALUES('Reorganizacao', '20', 'Sao Paulo', '1');
INSERT INTO PROJETO VALUES('Novosbeneficios', '30', 'Maua', '4');
INSERT INTO DEPENDENTE VALUES('33344555587', 'Alicia', 'F', '1986-04-05', 'Filha');
INSERT INTO DEPENDENTE VALUES('33344555587', 'Tiago', 'M', '1983-10-25', 'Filho');
INSERT INTO DEPENDENTE VALUES('33344555587', 'Janaina', 'F', '1958-05-03', 'Esposa');
INSERT INTO DEPENDENTE VALUES('98765432168', 'Antonio', 'M', '1942-02-28', 'Marido');
INSERT INTO DEPENDENTE VALUES('12345678966', 'Michael', 'M', '1988-01-04', 'Filho');
INSERT INTO DEPENDENTE VALUES('12345678966', 'Alicia', 'F', '1988-12-30', 'Filha');
INSERT INTO DEPENDENTE VALUES('12345678966', 'Elizabeth', 'F', '1967-05-05', 'Esposa');
INSERT INTO TRABALHA_EM VALUES('12345678966', '1', '32.5');
INSERT INTO TRABALHA_EM VALUES('12345678966', '2', '7.5');
INSERT INTO TRABALHA_EM VALUES('66688444476', '3', '40.0');
INSERT INTO TRABALHA_EM VALUES('45345345376', '1', '20.0');
INSERT INTO TRABALHA_EM VALUES('45345345376', '2', '20.0');
INSERT INTO TRABALHA_EM VALUES('33344555587', '2', '10.0');
INSERT INTO TRABALHA_EM VALUES('33344555587', '3', '10.0');
INSERT INTO TRABALHA_EM VALUES('33344555587', '10', '10.0');
INSERT INTO TRABALHA_EM VALUES('33344555587', '20', '10.0');
INSERT INTO TRABALHA_EM VALUES('99988777767', '30', '30.0');
INSERT INTO TRABALHA_EM VALUES('99988777767', '10', '10.0');
INSERT INTO TRABALHA_EM VALUES('98798798733', '10', '35.0');
INSERT INTO TRABALHA_EM VALUES('98798798733', '30', '5.0');
INSERT INTO TRABALHA_EM VALUES('98765432168', '30', '20.0');
INSERT INTO TRABALHA_EM VALUES('98765432168', '20', '15.0');
INSERT INTO TRABALHA_EM VALUES('88866555576', '20', NULL);