-
Notifications
You must be signed in to change notification settings - Fork 0
/
questao7.sql
50 lines (43 loc) · 1.55 KB
/
questao7.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
CREATE TABLE empregado (
cod_empregado INT,
nome_empregado VARCHAR(30),
rua VARCHAR(30),
cidade VARCHAR(20),
salario REAL,
PRIMARY KEY (cod_empregado)
);
CREATE TABLE trabalha (
cod_empregado INT,
cod_companhia INT,
PRIMARY KEY(cod_empregado, cod_empregado),
CONSTRAINT fk_empregado FOREIGN KEY (cod_empregado)
REFERENCES empregado(cod_empregado)
ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT fk_companhia FOREIGN KEY (cod_companhia)
REFERENCES companhia(cod_companhia)
ON DELETE RESTRICT ON UPDATE CASCADE
);
CREATE TABLE companhia (
cod_companhia INT,
CNPJ VARCHAR(15),
nome_companhia VARCHAR(30),
cidade_companhia VARCHAR(20),
PRIMARY KEY (cod_companhia)
);
CREATE TABLE gerente (
cod_empregado INT,
cod_companhia INT,
PRIMARY KEY(cod_empregado, cod_empregado),
CONSTRAINT empregado_fk FOREIGN KEY (cod_empregado)
REFERENCES empregado(cod_empregado)
ON DELETE RESTRICT ON UPDATE CASCADE,
CONSTRAINT companhia_fk FOREIGN KEY (cod_companhia)
REFERENCES companhia(cod_companhia)
ON DELETE RESTRICT ON UPDATE CASCADE
);
INSERT INTO empregado(cod_companhia, nome_empregado, rua, cidade, salario) VALUES
(0001, "Gabriel Azevedo dos Santos", "Tonheca Dantas", "Caicó", 2.500);
INSERT INTO trabalha(cod_empregado, cod_companhia) VALUES (0001, 2648);
INSERT INTO companhia(cod_companhia, CNPJ, nome_companhia, cidade_companhia) VALUES
(2648, "12.345.678/0001-09", "Google", "Caicó");
INSERT INTO gerente(cod_empregado, cod_companhia) VALUES (0002, 2648);