-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsql_queries
More file actions
157 lines (133 loc) · 5.7 KB
/
sql_queries
File metadata and controls
157 lines (133 loc) · 5.7 KB
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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
CREATE DATABASE project_kgb;
use project_kgb;
CREATE TABLE Admins (
id_admin INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
name_admin VARCHAR(50) NOT NULL,
firstname_admin VARCHAR(50) NOT NULL,
email_admin VARCHAR(100) NOT NULL,
password_admin VARCHAR(100) NOT NULL,
creation_admin TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP,
secret_admin VARCHAR(100) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Targets (
code_target VARCHAR(50) PRIMARY KEY UNIQUE NOT NULL,
name_target VARCHAR(50) NOT NULL,
firstname_target VARCHAR(50) NOT NULL,
datebirthday_target DATE NOT NULL,
nationality_target VARCHAR(50) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Contacts (
code_contact VARCHAR(50) PRIMARY KEY UNIQUE NOT NULL,
name_contact VARCHAR(50) NOT NULL,
firstname_contact VARCHAR(50) NOT NULL,
datebirthday_contact DATE NOT NULL,
nationality_contact VARCHAR(50) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Agents (
id_agent INT PRIMARY KEY AUTO_INCREMENT NOT NULL,
name_agent VARCHAR(50) NOT NULL,
firstname_agent VARCHAR(50) NOT NULL,
datebirthday_agent DATE NOT NULL,
nationality_agent VARCHAR(50) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Specialities (
name_speciality VARCHAR(50) PRIMARY KEY UNIQUE NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Specialities_agents (
name_speciality VARCHAR(50) NOT NULL,
id_agent INT NOT NULL,
PRIMARY KEY (name_speciality, id_agent),
CONSTRAINT fk_name_speciality
FOREIGN KEY (name_speciality) REFERENCES Specialities (name_speciality)
ON UPDATE CASCADE ON DELETE CASCADE,
KEY id_agent (id_agent)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Hideouts (
id_hideout INT PRIMARY KEY UNIQUE NOT NULL,
address_hideout TEXT NOT NULL,
country_hideout VARCHAR(50) NOT NULL,
type_hideout VARCHAR(30) NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Durations (
id_duration INT PRIMARY KEY UNIQUE NOT NULL,
start_duration DATE NOT NULL,
end_duration DATE NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Status (
code_status VARCHAR(20) PRIMARY KEY UNIQUE NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Types (
name_type VARCHAR(30) PRIMARY KEY UNIQUE NOT NULL
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Missions (
code_mission VARCHAR(50) PRIMARY KEY UNIQUE NOT NULL,
title_mission VARCHAR(100) NOT NULL,
description_mission TEXT,
country_mission VARCHAR(50) NOT NULL,
id_duration INT NOT NULL,
CONSTRAINT fk_id_duration
FOREIGN KEY (id_duration) REFERENCES Durations (id_duration)
ON UPDATE CASCADE ON DELETE CASCADE,
code_status VARCHAR(20) NOT NULL,
CONSTRAINT fk_code_status
FOREIGN KEY (code_status) REFERENCES Status (code_status)
ON UPDATE CASCADE ON DELETE CASCADE,
name_type VARCHAR(30) NOT NULL,
CONSTRAINT fk_name_type
FOREIGN KEY (name_type) REFERENCES Types (name_type)ON
UPDATE CASCADE ON DELETE CASCADE,
KEY name_speciality (name_speciality)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Targets_missions (
code_target VARCHAR(50) NOT NULL,
code_mission VARCHAR(50) NOT NULL,
PRIMARY KEY (code_target, code_mission),
CONSTRAINT fk_code_target
FOREIGN KEY (code_target) REFERENCES Targets (code_target)
ON UPDATE CASCADE ON DELETE CASCADE,
CONSTRAINT fk_code_mission
FOREIGN KEY (code_mission) REFERENCES Missions (code_mission)
ON UPDATE CASCADE ON DELETE CASCADE
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Agents_missions (
id_agent INT NOT NULL,
code_mission VARCHAR(50) NOT NULL,
PRIMARY KEY (id_agent, code_mission),
CONSTRAINT fk_id_agent
FOREIGN KEY (id_agent) REFERENCES Agents (id_agent)
ON UPDATE CASCADE ON DELETE CASCADE,
KEY code_mission (code_mission)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Contacts_missions (
code_contact VARCHAR(50) NOT NULL,
code_mission VARCHAR(50) NOT NULL,
PRIMARY KEY (code_contact, code_mission),
CONSTRAINT fk_code_contact
FOREIGN KEY (code_contact) REFERENCES Contacts (code_contact)
ON UPDATE CASCADE ON DELETE CASCADE,
KEY code_mission (code_mission)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE Hideouts_missions (
id_hideout INT NOT NULL,
code_mission VARCHAR(50) NOT NULL,
PRIMARY KEY (id_hideout, code_mission),
CONSTRAINT fk_id_hideout
FOREIGN KEY (id_hideout) REFERENCES Hideouts (id_hideout)
ON UPDATE CASCADE ON DELETE CASCADE,
KEY code_mission (code_mission)
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
/* Insertion de quelques données en dur : */
INSERT INTO Admins (name_admin, firstname_admin, email_admin, password_admin, secret_admin) VALUES ('NameExample', 'FirstNameExample',
'emailExample@gmail.com', SHA1('example'), SHA1('example'));
/* In the login function of the AdminController for instance, add the line code and copy the hashed password :
echo password_hash("passwordToHash", PASSWORD_DEFAULT);
Then, replace 'hashedPassword' by the hashed password :
*/
UPDATE `Admins` SET `password_admin` = 'hashedPassword' WHERE `Admins`.`id_admin` = 1;
INSERT INTO Types (name_type) VALUES ('Surveillance');
INSERT INTO Status (code_status) VALUES ('en preparation');
INSERT INTO Durations (id_duration, start_duration, end_duration) VALUES (1, '2022-07-19', '2022-09-19');
INSERT INTO Missions (code_mission, title_mission, description_mission, country_mission, id_duration, code_status, name_type)
VALUES ('Hercules', 'Surveiller un pirate informatique','Cette mission consiste à surveiller un hackeur', 'France', 1, 'en
préparation', 'Surveillance');