Revize 199b5c55
Přidáno uživatelem Dominik Poch před téměř 6 roky(ů)
server/init.sql | ||
---|---|---|
1 |
CREATE TABLE test ( |
|
2 |
id MEDIUMINT NOT NULL AUTO_INCREMENT, |
|
3 |
message VARCHAR(255), |
|
1 |
-- ----------------------------------------------------- |
|
2 |
-- Table role |
|
3 |
-- ----------------------------------------------------- |
|
4 |
DROP TABLE IF EXISTS role; |
|
5 |
CREATE TABLE role ( |
|
6 |
id TINYINT NOT NULL AUTO_INCREMENT, |
|
7 |
name VARCHAR(8) NOT NULL, |
|
4 | 8 |
PRIMARY KEY (id) |
5 | 9 |
); |
6 | 10 |
|
7 |
INSERT INTO test (message) VALUES ('test 1'); |
|
8 |
INSERT INTO test (message) VALUES ('test 2'); |
|
9 |
INSERT INTO test (message) VALUES ('test 3'); |
|
10 |
INSERT INTO test (message) VALUES ('test 4'); |
|
11 |
-- ----------------------------------------------------- |
|
12 |
-- Table approval_status |
|
13 |
-- ----------------------------------------------------- |
|
14 |
DROP TABLE IF EXISTS approval_status; |
|
15 |
CREATE TABLE approval_status ( |
|
16 |
id TINYINT NOT NULL AUTO_INCREMENT, |
|
17 |
name VARCHAR(8) NOT NULL, |
|
18 |
PRIMARY KEY (id) |
|
19 |
); |
|
20 |
|
|
21 |
-- ----------------------------------------------------- |
|
22 |
-- Table vacation_type |
|
23 |
-- ----------------------------------------------------- |
|
24 |
DROP TABLE IF EXISTS vacation_type; |
|
25 |
CREATE TABLE vacation_type ( |
|
26 |
id TINYINT NOT NULL AUTO_INCREMENT, |
|
27 |
name VARCHAR(8) NOT NULL, |
|
28 |
PRIMARY KEY (id) |
|
29 |
); |
|
30 |
|
|
31 |
-- ----------------------------------------------------- |
|
32 |
-- Table end_user |
|
33 |
-- ----------------------------------------------------- |
|
34 |
DROP TABLE IF EXISTS end_user; |
|
35 |
CREATE TABLE end_user ( |
|
36 |
id BIGINT NOT NULL AUTO_INCREMENT, |
|
37 |
first_name VARCHAR(45) NOT NULL, |
|
38 |
last_name VARCHAR(45) NOT NULL, |
|
39 |
no_vacations FLOAT, |
|
40 |
no_sick_days SMALLINT, |
|
41 |
alert DATETIME, |
|
42 |
token TEXT NOT NULL, |
|
43 |
email VARCHAR(45) NOT NULL, |
|
44 |
photo TEXT, |
|
45 |
creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, |
|
46 |
role_id TINYINT NOT NULL, |
|
47 |
status_id TINYINT NOT NULL, |
|
48 |
PRIMARY KEY (id), |
|
49 |
INDEX fk_end_user_role (role_id ASC), |
|
50 |
INDEX fk_end_user_approval_status (status_id ASC), |
|
51 |
CONSTRAINT fk_end_user_role FOREIGN KEY (role_id) |
|
52 |
REFERENCES role (id) |
|
53 |
ON DELETE CASCADE ON UPDATE CASCADE, |
|
54 |
CONSTRAINT fk_end_user_approval_status FOREIGN KEY (status_id) |
|
55 |
REFERENCES approval_status (id) |
|
56 |
ON DELETE NO ACTION ON UPDATE CASCADE, |
|
57 |
CONSTRAINT check_no_vacation CHECK (no_vacations >= 0), |
|
58 |
CONSTRAINT check_no_sick_days CHECK (no_sick_days >= 0), |
|
59 |
CONSTRAINT check_email CHECK (email = '%_@__%.__%') |
|
60 |
); |
|
61 |
|
|
62 |
-- ----------------------------------------------------- |
|
63 |
-- Table vacation_day |
|
64 |
-- ----------------------------------------------------- |
|
65 |
DROP TABLE IF EXISTS vacation_day; |
|
66 |
CREATE TABLE vacation_day ( |
|
67 |
id BIGINT NOT NULL AUTO_INCREMENT, |
|
68 |
vacation_date DATE NOT NULL, |
|
69 |
time_from TIME, |
|
70 |
time_to TIME, |
|
71 |
creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, |
|
72 |
user_id BIGINT NOT NULL, |
|
73 |
status_id TINYINT NOT NULL, |
|
74 |
type_id TINYINT NOT NULL, |
|
75 |
PRIMARY KEY (id), |
|
76 |
INDEX fk_vacation_day_approval_status (status_id ASC), |
|
77 |
INDEX fk_vacation_day_end_user (user_id ASC), |
|
78 |
CONSTRAINT fk_vacation_day_approval_status FOREIGN KEY (status_id) |
|
79 |
REFERENCES approval_status (id) |
|
80 |
ON DELETE NO ACTION ON UPDATE CASCADE, |
|
81 |
CONSTRAINT fk_vacation_day_end_user FOREIGN KEY (user_id) |
|
82 |
REFERENCES end_user (id) |
|
83 |
ON DELETE CASCADE ON UPDATE CASCADE, |
|
84 |
CONSTRAINT check_time CHECK (time_from < time_to) |
|
85 |
); |
|
86 |
|
|
87 |
-- ----------------------------------------------------- |
|
88 |
-- Table Default_Settings |
|
89 |
-- ----------------------------------------------------- |
|
90 |
DROP TABLE IF EXISTS default_settings; |
|
91 |
CREATE TABLE default_settings ( |
|
92 |
id BIGINT NOT NULL AUTO_INCREMENT, |
|
93 |
no_sick_days SMALLINT NOT NULL, |
|
94 |
alert DATETIME NOT NULL, |
|
95 |
creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, |
|
96 |
PRIMARY KEY (id), |
|
97 |
CONSTRAINT check_no_sick_days CHECK (no_sick_days >= 0) |
|
98 |
); |
|
99 |
|
|
100 |
-- ----------------------------------------------------- |
|
101 |
-- Insert table role |
|
102 |
-- ----------------------------------------------------- |
|
103 |
INSERT INTO role (name) VALUES ('employee'); |
|
104 |
INSERT INTO role (name) VALUES ('employer'); |
|
105 |
|
|
106 |
-- ----------------------------------------------------- |
|
107 |
-- Insert table approval_status |
|
108 |
-- ----------------------------------------------------- |
|
109 |
INSERT INTO approval_status (name) VALUES ('accepted'); |
|
110 |
INSERT INTO approval_status (name) VALUES ('pending'); |
|
111 |
INSERT INTO approval_status (name) VALUES ('rejected'); |
|
112 |
|
|
113 |
-- ----------------------------------------------------- |
|
114 |
-- Insert table vacation_type |
|
115 |
-- ----------------------------------------------------- |
|
116 |
INSERT INTO vacation_type (name) VALUES ('sickday'); |
|
117 |
INSERT INTO vacation_type (name) VALUES ('vacation'); |
|
118 |
|
|
119 |
-- ----------------------------------------------------- |
|
120 |
-- Insert table end_user |
|
121 |
-- ----------------------------------------------------- |
|
122 |
-- INSERT INTO end_user (first_name, last_name, no_vacations, no_sick_days, alert, token, email, photo, role_id, status_id) VALUES (); |
|
123 |
|
|
124 |
-- ----------------------------------------------------- |
|
125 |
-- Insert table vacation_day |
|
126 |
-- ----------------------------------------------------- |
|
127 |
-- INSERT INTO vacation_day (vacation_date, time_from, time_to, user_id, status_id, type_id) VALUES (); |
|
128 |
|
|
129 |
-- ----------------------------------------------------- |
|
130 |
-- Insert table default_settings |
|
131 |
-- ----------------------------------------------------- |
|
132 |
INSERT INTO default_settings (no_sick_days, alert) VALUES (5, '2019-12-01 12:00:00.000'); |
Také k dispozici: Unified diff
Re #7385 Initialisation of the database