· 9 years ago · Nov 29, 2016, 02:20 PM
1DROP DATABASE IF EXISTS Ecole;
2CREATE DATABASE IF NOT EXISTS Ecole;
3USE Ecole;
4
5#------------------------------------------------------------
6# Script MySQL.
7#------------------------------------------------------------
8
9
10#------------------------------------------------------------
11# Table: Cursus
12#------------------------------------------------------------
13
14CREATE TABLE Cursus(
15 cursus_id int (11) Auto_increment NOT NULL ,
16 cursus_nom Varchar (25) ,
17 formateur_interne_id Int ,
18 session_id Int ,
19 PRIMARY KEY (cursus_id )
20)ENGINE=InnoDB;
21
22
23#------------------------------------------------------------
24# Table: Formateur Interne
25#------------------------------------------------------------
26
27CREATE TABLE Formateur_Interne(
28 formateur_interne_id int (11) Auto_increment NOT NULL ,
29 formateur_id Int ,
30 PRIMARY KEY (formateur_interne_id )
31)ENGINE=InnoDB;
32
33
34#------------------------------------------------------------
35# Table: Cours
36#------------------------------------------------------------
37
38CREATE TABLE Cours(
39 cours_id int (11) Auto_increment NOT NULL ,
40 cours_support Varchar (25) ,
41 cours_intitule Varchar (25) ,
42 cours_sujet Varchar (25) ,
43 cours_niveau Int ,
44 PRIMARY KEY (cours_id )
45)ENGINE=InnoDB;
46
47
48#------------------------------------------------------------
49# Table: Eleve
50#------------------------------------------------------------
51
52CREATE TABLE Eleve(
53 eleve_id int (11) Auto_increment NOT NULL ,
54 personne_id Int ,
55 PRIMARY KEY (eleve_id )
56)ENGINE=InnoDB;
57
58
59#------------------------------------------------------------
60# Table: Entreprise
61#------------------------------------------------------------
62
63CREATE TABLE Entreprise(
64 entreprise_id int (11) Auto_increment NOT NULL ,
65 entreprise_nom Varchar (25) ,
66 entreprise_adresse Varchar (25) ,
67 entreprise_domaine Varchar (25) ,
68 PRIMARY KEY (entreprise_id )
69)ENGINE=InnoDB;
70
71
72
73#------------------------------------------------------------
74# Table: Session
75#------------------------------------------------------------
76
77CREATE TABLE Session(
78 session_id int (11) Auto_increment NOT NULL ,
79 session_nom Varchar (25) ,
80 session_datedebut Varchar (25) ,
81 session_datefin Varchar (25) ,
82 PRIMARY KEY (session_id )
83)ENGINE=InnoDB;
84
85
86#------------------------------------------------------------
87# Table: Formateur Externe
88#------------------------------------------------------------
89
90CREATE TABLE Formateur_Externe(
91 formateur_externe_id int (11) Auto_increment NOT NULL ,
92 externe_metier Varchar (25) ,
93 entreprise_id Int ,
94 formateur_id Int ,
95 PRIMARY KEY (formateur_externe_id )
96)ENGINE=InnoDB;
97
98
99#------------------------------------------------------------
100# Table: Equipement
101#------------------------------------------------------------
102
103CREATE TABLE Equipement(
104 equipement_id int (11) Auto_increment NOT NULL ,
105 equipement_nom Varchar (25) ,
106 salle_id Int ,
107 PRIMARY KEY (equipement_id )
108)ENGINE=InnoDB;
109
110
111#------------------------------------------------------------
112# Table: Salle
113#------------------------------------------------------------
114
115CREATE TABLE Salle(
116 salle_id int (11) Auto_increment NOT NULL ,
117 salle_nom Varchar (25) ,
118 salle_batiment Varchar (25) ,
119 PRIMARY KEY (salle_id )
120)ENGINE=InnoDB;
121
122
123#------------------------------------------------------------
124# Table: Formateur
125#------------------------------------------------------------
126
127CREATE TABLE Formateur(
128 formateur_id int (11) Auto_increment NOT NULL ,
129 formateur_externe_id Int ,
130 formateur_interne_id Int ,
131 personne_id Int ,
132 PRIMARY KEY (formateur_id )
133)ENGINE=InnoDB;
134
135
136
137#------------------------------------------------------------
138# Table: Diplome
139#------------------------------------------------------------
140
141CREATE TABLE Diplome(
142 diplome_id int (11) Auto_increment NOT NULL ,
143 diplome_nom Varchar (25) ,
144 diplome_mention Varchar (25) ,
145 cursus_id Int ,
146 PRIMARY KEY (diplome_id )
147)ENGINE=InnoDB;
148
149
150#------------------------------------------------------------
151# Table: Personne
152#------------------------------------------------------------
153
154CREATE TABLE Personne(
155 personne_id int (11) Auto_increment NOT NULL ,
156 personne_nom Varchar (25) ,
157 personne_prenom Varchar (25) ,
158 eleve_id Int ,
159 formateur_id Int ,
160 PRIMARY KEY (personne_id )
161)ENGINE=InnoDB;
162
163#------------------------------------------------------------
164# Table: appartenir Ã
165#------------------------------------------------------------
166
167CREATE TABLE appartenir_a(
168 cursus_id Int NOT NULL ,
169 cours_id Int NOT NULL ,
170 PRIMARY KEY (cursus_id ,cours_id )
171)ENGINE=InnoDB;
172
173
174#------------------------------------------------------------
175# Table: suivre en alternance
176#------------------------------------------------------------
177
178CREATE TABLE suivre_en_alternance(
179 entreprise_id Int NOT NULL ,
180 eleve_id Int NOT NULL ,
181 cursus_id Int NOT NULL ,
182 PRIMARY KEY (entreprise_id ,eleve_id ,cursus_id )
183)ENGINE=InnoDB;
184
185
186#------------------------------------------------------------
187# Table: faire partit de
188#------------------------------------------------------------
189
190CREATE TABLE faire_partit_de(
191 eleve_id Int NOT NULL ,
192 session_id Int NOT NULL ,
193 PRIMARY KEY (eleve_id ,session_id )
194)ENGINE=InnoDB;
195
196
197#------------------------------------------------------------
198# Table: evaluer
199#------------------------------------------------------------
200
201CREATE TABLE evaluer(
202 note Varchar (25) ,
203 eleve_id Int NOT NULL ,
204 cours_id Int NOT NULL ,
205 session_id Int NOT NULL ,
206 PRIMARY KEY (eleve_id ,cours_id ,session_id )
207)ENGINE=InnoDB;
208
209
210#------------------------------------------------------------
211# Table: avoir besoin de
212#------------------------------------------------------------
213
214CREATE TABLE avoir_besoin_de(
215 cours_id Int NOT NULL ,
216 equipement_id Int NOT NULL ,
217 PRIMARY KEY (cours_id ,equipement_id )
218)ENGINE=InnoDB;
219
220
221#------------------------------------------------------------
222# Table: organiser
223#------------------------------------------------------------
224
225CREATE TABLE organiser(
226 date_organisation Date ,
227 cours_id Int NOT NULL ,
228 session_id Int NOT NULL ,
229 salle_id Int NOT NULL ,
230 PRIMARY KEY (cours_id ,session_id ,salle_id )
231)ENGINE=InnoDB;
232
233
234#------------------------------------------------------------
235# Table: donner
236#------------------------------------------------------------
237
238CREATE TABLE donner(
239 cours_id Int NOT NULL ,
240 formateur_id Int NOT NULL ,
241 PRIMARY KEY (cours_id ,formateur_id )
242)ENGINE=InnoDB;
243
244
245#------------------------------------------------------------
246# Table: suivre à temps plein
247#------------------------------------------------------------
248
249CREATE TABLE suivre_a_temps_plein(
250 cursus_id Int NOT NULL ,
251 eleve_id Int NOT NULL ,
252 PRIMARY KEY (cursus_id ,eleve_id )
253)ENGINE=InnoDB;
254
255ALTER TABLE Cursus ADD CONSTRAINT FK_Cursus_formateur_interne_id FOREIGN KEY (formateur_interne_id) REFERENCES Formateur_Interne(formateur_interne_id);
256ALTER TABLE Cursus ADD CONSTRAINT FK_Cursus_session_id FOREIGN KEY (session_id) REFERENCES Session(session_id);
257ALTER TABLE Formateur_Interne ADD CONSTRAINT FK_Formateur_Interne_formateur_id FOREIGN KEY (formateur_id) REFERENCES Formateur(formateur_id);
258ALTER TABLE Eleve ADD CONSTRAINT FK_Eleve_personne_id FOREIGN KEY (personne_id) REFERENCES Personne(personne_id);
259ALTER TABLE Formateur_Externe ADD CONSTRAINT FK_Formateur_Externe_entreprise_id FOREIGN KEY (entreprise_id) REFERENCES Entreprise(entreprise_id);
260ALTER TABLE Formateur_Externe ADD CONSTRAINT FK_Formateur_Externe_formateur_id FOREIGN KEY (formateur_id) REFERENCES Formateur(formateur_id);
261ALTER TABLE Equipement ADD CONSTRAINT FK_Equipement_salle_id FOREIGN KEY (salle_id) REFERENCES Salle(salle_id);
262ALTER TABLE Formateur ADD CONSTRAINT FK_Formateur_formateur_externe_id FOREIGN KEY (formateur_externe_id) REFERENCES Formateur_Externe(formateur_externe_id);
263ALTER TABLE Formateur ADD CONSTRAINT FK_Formateur_formateur_interne_id FOREIGN KEY (formateur_interne_id) REFERENCES Formateur_Interne(formateur_interne_id);
264ALTER TABLE Formateur ADD CONSTRAINT FK_Formateur_personne_id FOREIGN KEY (personne_id) REFERENCES Personne(personne_id);
265ALTER TABLE Diplome ADD CONSTRAINT FK_Diplome_cursus_id FOREIGN KEY (cursus_id) REFERENCES Cursus(cursus_id);
266ALTER TABLE Personne ADD CONSTRAINT FK_Personne_eleve_id FOREIGN KEY (eleve_id) REFERENCES Eleve(eleve_id);
267ALTER TABLE Personne ADD CONSTRAINT FK_Personne_formateur_id FOREIGN KEY (formateur_id) REFERENCES Formateur(formateur_id);
268ALTER TABLE appartenir_a ADD CONSTRAINT FK_appartenir_a_cursus_id FOREIGN KEY (cursus_id) REFERENCES Cursus(cursus_id);
269ALTER TABLE appartenir_a ADD CONSTRAINT FK_appartenir_a_cours_id FOREIGN KEY (cours_id) REFERENCES Cours(cours_id);
270ALTER TABLE suivre_en_alternance ADD CONSTRAINT FK_suivre_en_alternance_entreprise_id FOREIGN KEY (entreprise_id) REFERENCES Entreprise(entreprise_id);
271ALTER TABLE suivre_en_alternance ADD CONSTRAINT FK_suivre_en_alternance_eleve_id FOREIGN KEY (eleve_id) REFERENCES Eleve(eleve_id);
272ALTER TABLE suivre_en_alternance ADD CONSTRAINT FK_suivre_en_alternance_cursus_id FOREIGN KEY (cursus_id) REFERENCES Cursus(cursus_id);
273ALTER TABLE faire_partit_de ADD CONSTRAINT FK_faire_partit_de_eleve_id FOREIGN KEY (eleve_id) REFERENCES Eleve(eleve_id);
274ALTER TABLE faire_partit_de ADD CONSTRAINT FK_faire_partit_de_session_id FOREIGN KEY (session_id) REFERENCES Session(session_id);
275ALTER TABLE evaluer ADD CONSTRAINT FK_evaluer_eleve_id FOREIGN KEY (eleve_id) REFERENCES Eleve(eleve_id);
276ALTER TABLE evaluer ADD CONSTRAINT FK_evaluer_cours_id FOREIGN KEY (cours_id) REFERENCES Cours(cours_id);
277ALTER TABLE evaluer ADD CONSTRAINT FK_evaluer_session_id FOREIGN KEY (session_id) REFERENCES Session(session_id);
278ALTER TABLE avoir_besoin_de ADD CONSTRAINT FK_avoir_besoin_de_cours_id FOREIGN KEY (cours_id) REFERENCES Cours(cours_id);
279ALTER TABLE avoir_besoin_de ADD CONSTRAINT FK_avoir_besoin_de_equipement_id FOREIGN KEY (equipement_id) REFERENCES Equipement(equipement_id);
280ALTER TABLE organiser ADD CONSTRAINT FK_organiser_cours_id FOREIGN KEY (cours_id) REFERENCES Cours(cours_id);
281ALTER TABLE organiser ADD CONSTRAINT FK_organiser_session_id FOREIGN KEY (session_id) REFERENCES Session(session_id);
282ALTER TABLE organiser ADD CONSTRAINT FK_organiser_salle_id FOREIGN KEY (salle_id) REFERENCES Salle(salle_id);
283ALTER TABLE donner ADD CONSTRAINT FK_donner_cours_id FOREIGN KEY (cours_id) REFERENCES Cours(cours_id);
284ALTER TABLE donner ADD CONSTRAINT FK_donner_formateur_id FOREIGN KEY (formateur_id) REFERENCES Formateur(formateur_id);
285ALTER TABLE suivre_a_temps_plein ADD CONSTRAINT FK_suivre_a_temps_plein_cursus_id FOREIGN KEY (cursus_id) REFERENCES Cursus(cursus_id);
286ALTER TABLE suivre_a_temps_plein ADD CONSTRAINT FK_suivre_a_temps_plein_eleve_id FOREIGN KEY (eleve_id) REFERENCES Eleve(eleve_id);