· 9 years ago · Nov 25, 2016, 08:10 AM
1-- ---
2-- Globals
3-- ---
4
5-- SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
6-- SET FOREIGN_KEY_CHECKS=0;
7
8-- ---
9-- Table 'uczniowie'
10--
11-- ---
12
13DROP TABLE IF EXISTS `uczniowie`;
14
15CREATE TABLE `uczniowie` (
16 `id` INTEGER AUTO_INCREMENT,
17 `imie` VARCHAR(50) NOT NULL,
18 `nazwisko` VARCHAR(50) NOT NULL,
19 `data urodzenia` DATE NOT NULL,
20 `pesel` DECIMAL(11) NOT NULL,
21 `id_klasy` INTEGER NULL,
22 PRIMARY KEY (`id`)
23);
24
25-- ---
26-- Table 'nauczyciele'
27--
28-- ---
29
30DROP TABLE IF EXISTS `nauczyciele`;
31
32CREATE TABLE `nauczyciele` (
33 `id` INTEGER AUTO_INCREMENT,
34 `imie` VARCHAR(50) NOT NULL,
35 `nazwisko` VARCHAR(50) NOT NULL,
36 `pesel` DECIMAL(11) NOT NULL,
37 `telefon` DECIMAL(11) NULL,
38 PRIMARY KEY (`id`)
39);
40
41-- ---
42-- Table 'typy_szkol'
43--
44-- ---
45
46DROP TABLE IF EXISTS `typy_szkol`;
47
48CREATE TABLE `typy_szkol` (
49 `id` INTEGER AUTO_INCREMENT ,
50 `nazwa` VARCHAR(50) NOT NULL,
51 PRIMARY KEY (`id`)
52);
53
54-- ---
55-- Table 'profile'
56--
57-- ---
58
59DROP TABLE IF EXISTS `profile`;
60
61CREATE TABLE `profile` (
62 `id` INTEGER AUTO_INCREMENT,
63 `nazwa` VARCHAR(50) NOT NULL,
64 `skrot` VARCHAR(5) NOT NULL,
65 `id_typy_szkol` INTEGER NOT NULL,
66 PRIMARY KEY (`id`)
67);
68
69-- ---
70-- Table 'klasy'
71--
72-- ---
73
74DROP TABLE IF EXISTS `klasy`;
75
76CREATE TABLE `klasy` (
77 `id` INTEGER AUTO_INCREMENT,
78 `rok_rozpoczecia` INTEGER NOT NULL,
79 `oznaczenie` VARCHAR(10) NULL,
80 `id_profile` INTEGER NOT NULL,
81 `id_wychowawcy` INTEGER NOT NULL,
82 PRIMARY KEY (`id`)
83);
84
85-- ---
86-- Table 'przedmioty'
87--
88-- ---
89
90DROP TABLE IF EXISTS `przedmioty`;
91
92CREATE TABLE `przedmioty` (
93 `id` INTEGER AUTO_INCREMENT,
94 `nazwa` VARCHAR(50) NOT NULL,
95 PRIMARY KEY (`id`)
96);
97
98-- ---
99-- Table 'klasy_przedmioty_nauczyciele'
100--
101-- ---
102
103DROP TABLE IF EXISTS `klasy_przedmioty_nauczyciele`;
104
105CREATE TABLE `klasy_przedmioty_nauczyciele` (
106 `id` INTEGER AUTO_INCREMENT,
107 `id_klasy` INTEGER NOT NULL,
108 `id_przedmioty` INTEGER NOT NULL,
109 `id_nauczyciele` INTEGER NOT NULL,
110 PRIMARY KEY (`id`)
111);
112
113-- ---
114-- Table 'oceny'
115--
116-- ---
117
118DROP TABLE IF EXISTS `oceny`;
119
120CREATE TABLE `oceny` (
121 `id` INTEGER AUTO_INCREMENT ,
122 `opis` VARCHAR(50) NOT NULL,
123 `skrot` VARCHAR(5) NOT NULL,
124 `id_klasy` INTEGER NULL,
125 `id_przedmioty` INTEGER NULL,
126 `typ` VARCHAR(20) NOT NULL,
127 `waga` INTEGER NOT NULL DEFAULT 1,
128 PRIMARY KEY (`id`)
129);
130
131-- ---
132-- Table 'oceny_uczniowie'
133--
134-- ---
135
136DROP TABLE IF EXISTS `oceny_uczniowie`;
137
138CREATE TABLE `oceny_uczniowie` (
139 `id` INTEGER AUTO_INCREMENT ,
140 `id_oceny` INTEGER NOT NULL,
141 `id_uczniowie` INTEGER NOT NULL,
142 `wartosc` INTEGER NULL,
143 `data` DATE NOT NULL,
144 `id_nauczyciele` INTEGER NULL,
145 PRIMARY KEY (`id`)
146);
147
148-- ---
149-- Table 'uwagi'
150--
151-- ---
152
153DROP TABLE IF EXISTS `uwagi`;
154
155CREATE TABLE `uwagi` (
156 `id` INTEGER AUTO_INCREMENT,
157 `tresc` MEDIUMTEXT NOT NULL,
158 `id_uczniowie` INTEGER NOT NULL ,
159 `id_nauczyciele` INTEGER NOT NULL ,
160 `data` DATE NOT NULL,
161 PRIMARY KEY (`id`)
162);
163
164-- ---
165-- Table 'grupy'
166--
167-- ---
168
169DROP TABLE IF EXISTS `grupy`;
170
171CREATE TABLE `grupy` (
172 `id` INTEGER AUTO_INCREMENT ,
173 `nazwa` VARCHAR(30) NOT NULL,
174 PRIMARY KEY (`id`)
175);
176
177-- ---
178-- Table 'uczniowie_grupy'
179--
180-- ---
181
182DROP TABLE IF EXISTS `uczniowie_grupy`;
183
184CREATE TABLE `uczniowie_grupy` (
185 `id` INTEGER AUTO_INCREMENT,
186 `id_grupy` INTEGER NULL,
187 `id_uczniowie` INTEGER NULL,
188 PRIMARY KEY (`id`)
189);
190
191-- ---
192-- Table 'grupy_klasy'
193--
194-- ---
195
196DROP TABLE IF EXISTS `grupy_klasy`;
197
198CREATE TABLE `grupy_klasy` (
199 `id` INTEGER AUTO_INCREMENT,
200 `id_grupy` INTEGER NOT NULL,
201 `id_klasy` INTEGER NOT NULL,
202 PRIMARY KEY (`id`)
203);
204
205-- ---
206-- Table 'lekcja'
207--
208-- ---
209
210DROP TABLE IF EXISTS `lekcja`;
211
212CREATE TABLE `lekcja` (
213 `id` INTEGER AUTO_INCREMENT,
214 `id_nauczyciele` INTEGER NOT NULL,
215 `id_klasy` INTEGER NOT NULL,
216 `id_grupy` INTEGER NOT NULL,
217 `id_przedmioty` INTEGER NOT NULL,
218 PRIMARY KEY (`id`)
219);
220
221-- ---
222-- Table 'frekwencja'
223--
224-- ---
225
226DROP TABLE IF EXISTS `frekwencja`;
227
228CREATE TABLE `frekwencja` (
229 `id` INTEGER AUTO_INCREMENT ,
230 `data` DATE NOT NULL,
231 `id_godziny` INTEGER NOT NULL ,
232 `id_lekcja` INTEGER NOT NULL ,
233 PRIMARY KEY (`id`)
234);
235
236-- ---
237-- Table 'godziny'
238--
239-- ---
240
241DROP TABLE IF EXISTS `godziny`;
242
243CREATE TABLE `godziny` (
244 `id` INTEGER AUTO_INCREMENT,
245 `rozpoczenie` TIME NOT NULL,
246 `zakonczenie` TIME NOT NULL,
247 PRIMARY KEY (`id`)
248);
249
250-- ---
251-- Table 'frekwencja_uczniowie'
252--
253-- ---
254
255DROP TABLE IF EXISTS `frekwencja_uczniowie`;
256
257CREATE TABLE `frekwencja_uczniowie` (
258 `id` INTEGER AUTO_INCREMENT ,
259 `wpis` VARCHAR(5) NOT NULL,
260 `id_frekwencja` INTEGER NOT NULL,
261 `id_uczniowie` INTEGER NOT NULL,
262 `id_nauczyciele` INTEGER NOT NULL,
263 PRIMARY KEY (`id`)
264);
265
266-- ---
267-- Table 'dni'
268--
269-- ---
270
271DROP TABLE IF EXISTS `dni`;
272
273CREATE TABLE `dni` (
274 `id` INTEGER AUTO_INCREMENT,
275 `nazwa` VARCHAR(15) NOT NULL,
276 PRIMARY KEY (`id`)
277);
278
279-- ---
280-- Table 'plany_lekcyjne'
281--
282-- ---
283
284DROP TABLE IF EXISTS `plany_lekcyjne`;
285
286CREATE TABLE `plany_lekcyjne` (
287 `id` INTEGER AUTO_INCREMENT,
288 `id_klasy` INTEGER NOT NULL,
289 `id_grupy` INTEGER NOT NULL,
290 `id_dni` INTEGER NOT NULL,
291 `id_nauczyciele` INTEGER NOT NULL,
292 `id_przedmioty` INTEGER NOT NULL,
293 PRIMARY KEY (`id`)
294);
295
296-- ---
297-- Foreign Keys
298-- ---
299
300ALTER TABLE `uczniowie` ADD FOREIGN KEY (id_klasy) REFERENCES `klasy` (`id`);
301ALTER TABLE `profile` ADD FOREIGN KEY (id_typy_szkol) REFERENCES `typy_szkol` (`id`);
302ALTER TABLE `klasy` ADD FOREIGN KEY (id_profile) REFERENCES `profile` (`id`);
303ALTER TABLE `klasy` ADD FOREIGN KEY (id_wychowawcy) REFERENCES `nauczyciele` (`id`);
304ALTER TABLE `klasy_przedmioty_nauczyciele` ADD FOREIGN KEY (id_klasy) REFERENCES `klasy` (`id`);
305ALTER TABLE `klasy_przedmioty_nauczyciele` ADD FOREIGN KEY (id_przedmioty) REFERENCES `przedmioty` (`id`);
306ALTER TABLE `klasy_przedmioty_nauczyciele` ADD FOREIGN KEY (id_nauczyciele) REFERENCES `nauczyciele` (`id`);
307ALTER TABLE `oceny` ADD FOREIGN KEY (id_klasy) REFERENCES `klasy` (`id`);
308ALTER TABLE `oceny` ADD FOREIGN KEY (id_przedmioty) REFERENCES `przedmioty` (`id`);
309ALTER TABLE `oceny_uczniowie` ADD FOREIGN KEY (id_oceny) REFERENCES `oceny` (`id`);
310ALTER TABLE `oceny_uczniowie` ADD FOREIGN KEY (id_uczniowie) REFERENCES `uczniowie` (`id`);
311ALTER TABLE `oceny_uczniowie` ADD FOREIGN KEY (id_nauczyciele) REFERENCES `nauczyciele` (`id`);
312ALTER TABLE `uwagi` ADD FOREIGN KEY (id_uczniowie) REFERENCES `uczniowie` (`id`);
313ALTER TABLE `uwagi` ADD FOREIGN KEY (id_nauczyciele) REFERENCES `nauczyciele` (`id`);
314ALTER TABLE `uczniowie_grupy` ADD FOREIGN KEY (id_grupy) REFERENCES `grupy` (`id`);
315ALTER TABLE `uczniowie_grupy` ADD FOREIGN KEY (id_uczniowie) REFERENCES `uczniowie` (`id`);
316ALTER TABLE `grupy_klasy` ADD FOREIGN KEY (id_grupy) REFERENCES `grupy` (`id`);
317ALTER TABLE `grupy_klasy` ADD FOREIGN KEY (id_klasy) REFERENCES `klasy` (`id`);
318ALTER TABLE `lekcja` ADD FOREIGN KEY (id_nauczyciele) REFERENCES `nauczyciele` (`id`);
319ALTER TABLE `lekcja` ADD FOREIGN KEY (id_klasy) REFERENCES `klasy` (`id`);
320ALTER TABLE `lekcja` ADD FOREIGN KEY (id_grupy) REFERENCES `grupy` (`id`);
321ALTER TABLE `lekcja` ADD FOREIGN KEY (id_przedmioty) REFERENCES `przedmioty` (`id`);
322ALTER TABLE `frekwencja` ADD FOREIGN KEY (id_godziny) REFERENCES `godziny` (`id`);
323ALTER TABLE `frekwencja` ADD FOREIGN KEY (id_lekcja) REFERENCES `lekcja` (`id`);
324ALTER TABLE `frekwencja_uczniowie` ADD FOREIGN KEY (id_frekwencja) REFERENCES `frekwencja` (`id`);
325ALTER TABLE `frekwencja_uczniowie` ADD FOREIGN KEY (id_uczniowie) REFERENCES `uczniowie` (`id`);
326ALTER TABLE `frekwencja_uczniowie` ADD FOREIGN KEY (id_nauczyciele) REFERENCES `nauczyciele` (`id`);
327ALTER TABLE `plany_lekcyjne` ADD FOREIGN KEY (id_klasy) REFERENCES `klasy` (`id`);
328ALTER TABLE `plany_lekcyjne` ADD FOREIGN KEY (id_grupy) REFERENCES `grupy` (`id`);
329ALTER TABLE `plany_lekcyjne` ADD FOREIGN KEY (id_dni) REFERENCES `dni` (`id`);
330ALTER TABLE `plany_lekcyjne` ADD FOREIGN KEY (id_nauczyciele) REFERENCES `nauczyciele` (`id`);
331ALTER TABLE `plany_lekcyjne` ADD FOREIGN KEY (id_przedmioty) REFERENCES `przedmioty` (`id`);