· 7 years ago · Jan 09, 2019, 07:38 PM
1 CREATE DATABASE IF NOT EXISTS school;
2
3 use school;
4
5CREATE TABLE IF NOT EXISTS Uprawnienia(
6 ID INT AUTO_INCREMENT NOT NULL,
7 Uprawnienia ENUM('administrator', 'dyrektor', 'sekretariat', 'nauczyciel')NOT NULL,
8
9 PRIMARY KEY (ID)
10);
11
12CREATE TABLE IF NOT EXISTS Pracownicy(
13 ID INT AUTO_INCREMENT NOT NULL,
14 ImiÄ™ VARCHAR(20) NOT NULL,
15 Nazwisko VARCHAR(30) NOT NULL,
16 Stanowisko ENUM('nauczyciel', 'wozny', 'sprzataczka', 'dyrektor', 'pielegniarka', 'psycholog', 'asystentka'),
17 Plec ENUM('M','K') NOT NULL,
18 Data_urodzenia DATE NOT NULL,
19 PESEL CHAR(11) NOT NULL UNIQUE,
20 Miasto VARCHAR(20) NOT NULL,
21 Kod_pocztowy CHAR(6) NOT NULL,
22 Adres VARCHAR(30) NOT NULL,
23 Telefon_kontaktowy CHAR(9) UNIQUE,
24 Numer_konta CHAR(26),
25 Pensja INT,
26
27 PRIMARY KEY (ID)
28
29);
30
31CREATE TABLE IF NOT EXISTS Uzytkownicy(
32 LOGIN VARCHAR(10) NOT NULL,
33 Haslo VARCHAR(10) NOT NULL,
34 Pracownik INT UNIQUE,
35 Uprawnienia INT,
36
37 PRIMARY KEY (LOGIN),
38 FOREIGN KEY (Pracownik) REFERENCES Pracownicy(ID),
39 FOREIGN KEY (Uprawnienia) REFERENCES Uprawnienia(ID)
40
41);
42
43CREATE TABLE IF NOT EXISTS Przedmioty(
44ID INT NOT NULL AUTO_INCREMENT,
45Nazwa VARCHAR(20) NOT NULL UNIQUE,
46
47PRIMARY KEY (ID)
48);
49
50CREATE TABLE IF NOT EXISTS Sale(
51ID INT NOT NULL AUTO_INCREMENT,
52Typ ENUM('biblioteka','sala gimnastyczna', 'stolowka', 'szatnia','swietlica', 'sala lekcyjna','sekretariat') NOT NULL,
53
54PRIMARY KEY (ID)
55);
56
57CREATE TABLE IF NOT EXISTS Klasy(
58 ID INT NOT NULL AUTO_INCREMENT,
59 Numer INTEGER,
60 Symbol VARCHAR(1) NOT NULL,
61 Wychowawca INT,
62
63 PRIMARY KEY (ID),
64 FOREIGN KEY (Wychowawca) REFERENCES Pracownicy(ID),
65 UNIQUE KEY(Numer, Symbol)
66);
67
68CREATE TABLE IF NOT EXISTS Zajecia(
69ID INT NOT NULL AUTO_INCREMENT,
70Klasa INT,
71Przedmiot INT,
72Sala INT,
73Prowadzacy INT,
74Ilosc_godzin INT,
75
76PRIMARY KEY (ID),
77FOREIGN KEY (Klasa) REFERENCES Klasy(ID),
78FOREIGN KEY (Przedmiot) REFERENCES Przedmioty(ID),
79FOREIGN KEY (Sala) REFERENCES Sale(ID),
80FOREIGN KEY (Prowadzacy) REFERENCES Pracownicy(ID),
81UNIQUE KEY(Klasa,Przedmiot,Sala,Prowadzacy)
82);
83
84CREATE TABLE IF NOT EXISTS Uczniowie(
85 ID INT NOT NULL AUTO_INCREMENT,
86 ImiÄ™ VARCHAR(20) NOT NULL,
87 Nazwisko VARCHAR(20) NOT NULL,
88 Klasa INT,
89 Imię_ojca VARCHAR(20) NOT NULL,
90 Plec ENUM('M','K'),
91 Data_urodzenia DATE NOT NULL,
92 PESEL CHAR(11) NOT NULL UNIQUE,
93 Miasto VARCHAR(20) NOT NULL,
94 Kod_pocztowy CHAR(6) NOT NULL,
95 Adres VARCHAR(30) NOT NULL,
96 Telefon_kontaktowy CHAR(9) UNIQUE,
97
98 PRIMARY KEY (ID),
99 FOREIGN KEY (Klasa) REFERENCES Klasy(ID)
100);
101
102CREATE TABLE IF NOT EXISTS Pensje(
103Pracownik INT NOT NULL,
104`Data` DATE NOT NULL,
105Pensja INT NOT NULL,
106Numer_konta INT NOT NULL,
107
108FOREIGN KEY (Pracownik) REFERENCES Pracownicy(ID)
109);