forked from Vauxoo/vauxoo-applicant
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathemployee_vauxoo.sql
67 lines (55 loc) · 2.97 KB
/
employee_vauxoo.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
-- Your sql code in this file
-- NOTE: Please, don't add sentence to create database in this script file.
-- You can create database locally to test it.
-- Consider add ';' at end sentence.
CREATE TABLE employee_department(
id SERIAL PRIMARY KEY,
name VARCHAR (50) UNIQUE NOT NULL,
description text
);
CREATE TABLE employee(
id serial PRIMARY KEY,
first_name VARCHAR (50) NOT NULL,
last_name VARCHAR (50) NOT NULL,
id_department INTEGER NOT NULL,
id_boss INTEGER NOT NULL,
FOREIGN KEY (id_department) REFERENCES employee_department
ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (id_boss) REFERENCES employee
ON DELETE CASCADE ON UPDATE CASCADE
);
CREATE TABLE employee_hobby(
id SERIAL PRIMARY KEY,
name VARCHAR (50) UNIQUE NOT NULL,
description text
);
CREATE TABLE employee_hobby_ref(
id_employee SERIAL,
id_employee_hobby SERIAL,
FOREIGN KEY (id_employee) REFERENCES employee
ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (id_employee_hobby) REFERENCES employee_hobby
ON DELETE CASCADE ON UPDATE CASCADE,
PRIMARY KEY (id_employee, id_employee_hobby)
);
INSERT INTO employee_department (name, description) VALUES ('HR', 'description1');
INSERT INTO employee_department (name, description) VALUES ('Agricoltura', 'description2');
INSERT INTO employee_department (name, description) VALUES ('Amministrazione', 'description3');
INSERT INTO employee_department (name, description) VALUES ('Acquisti', 'description4');
INSERT INTO employee_department (name, description) VALUES ('Vendite', 'description5');
INSERT INTO employee_department (name, description) VALUES ('Marketing', 'description6');
INSERT INTO employee (first_name, last_name, id_department, id_boss) VALUES ('Demian', 'Rihs','4','1');
INSERT INTO employee (first_name, last_name, id_department, id_boss) VALUES ('Francesco', 'Apagno','1','1');
INSERT INTO employee (first_name, last_name, id_department, id_boss) VALUES ('Mark', 'Baumann','2','1');
INSERT INTO employee (first_name, last_name, id_department, id_boss) VALUES ('Francesco', 'Prova','3','1');
INSERT INTO employee_hobby (name, description) VALUES ('Photography', 'Love to take pictures');
INSERT INTO employee_hobby (name, description) VALUES ('Astronomy', 'Love to observe the night sky');
INSERT INTO employee_hobby (name, description) VALUES ('Hiking', 'Love to climb mountains');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('1','1');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('1','2');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('2','1');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('2','2');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('3','1');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('3','2');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('4','1');
INSERT INTO employee_hobby_ref (id_employee,id_employee_hobby) VALUES ('4','2');