· 4 years ago · Dec 09, 2020, 09:36 AM
1DROP TABLE IF EXISTS Kursbesuche;
2DROP TABLE IF EXISTS Kurskontrolle;
3DROP TABLE IF EXISTS Personen;
4DROP TABLE IF EXISTS Kurse;
5DROP TABLE IF EXISTS Kursthemen;
6DROP TABLE IF EXISTS Kursleiter;
7DROP TABLE IF EXISTS Funktionen;
8
9CREATE TABLE Kursleiter
10 (KLNR SMALLINT NOT NULL
11 ,STATUS VARCHAR(1) NOT NULL
12 ,PNR INT
13 ,NAME VARCHAR(20) NOT NULL
14 ,VORNAME VARCHAR(15) NOT NULL
15 ,FIRMA VARCHAR(20)
16 ,KURSERFAHRUNG TINYINT
17 );
18
19CREATE TABLE Kursthemen
20 (TNR TINYINT NOT NULL
21 ,THEMENGEBIET VARCHAR(40) NOT NULL
22 );
23
24CREATE TABLE Personen
25 (PNR INT NOT NULL
26 ,NAME VARCHAR(20) NOT NULL
27 ,VORNAME VARCHAR(15) NOT NULL
28 ,FNR TINYINT NOT NULL
29 ,LOHNSTUFE TINYINT NOT NULL
30 );
31
32CREATE TABLE Funktionen
33 (FNR TINYINT NOT NULL
34 ,FUNKTION VARCHAR(25) NOT NULL
35 );
36
37CREATE TABLE Kursbesuche
38 (PNR INT NOT NULL
39 ,KNR SMALLINT NOT NULL
40 ,KLNR SMALLINT NOT NULL
41 ,DATUM DATETIME NOT NULL
42 );
43
44CREATE TABLE Kurskontrolle
45 (KNR SMALLINT NOT NULL
46 ,FNR TINYINT NOT NULL
47 );
48
49CREATE TABLE Kurse
50 (KNR SMALLINT NOT NULL
51 ,KURSBEZEICHNUNG VARCHAR(40) NOT NULL
52 ,KURSORT VARCHAR(10) NOT NULL
53 ,TNR TINYINT NOT NULL
54 );
55
56CREATE UNIQUE INDEX IX_KURSTHEMEN_THEMENGEBIET ON Kursthemen
57 (THEMENGEBIET);
58
59CREATE INDEX IX_BEZ_01 ON Personen
60 (FNR);
61
62CREATE UNIQUE INDEX IX_FUNKTIONEN_FUNKTION ON Funktionen
63 (FUNKTION);
64
65CREATE INDEX IX_BEZ_04 ON Kursbesuche
66 (KNR);
67
68CREATE INDEX IX_BEZ_05 ON Kursbesuche
69 (PNR);
70
71CREATE INDEX IX_BEZ_06 ON Kursbesuche
72 (KLNR);
73
74CREATE INDEX IX_BEZ_02 ON Kurskontrolle
75 (FNR);
76
77CREATE INDEX IX_BEZ_07 ON Kurskontrolle
78 (KNR);
79
80CREATE INDEX IX_BEZ_03 ON Kurse
81 (TNR);
82
83INSERT INTO Funktionen (FNr,Funktion)
84VALUES (1,'Vorarbeiter');
85INSERT INTO Funktionen (FNr,Funktion)
86VALUES (2,'Meister');
87INSERT INTO Funktionen (FNr,Funktion)
88VALUES (3,'Chemiker');
89INSERT INTO Funktionen (FNr,Funktion)
90VALUES (4,'Bereichsleiter');
91INSERT INTO Funktionen (FNr,Funktion)
92VALUES (5,'Informatiker');
93
94INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
95VALUES (1,'I',345727,'Maier','Josef',NULL,3);
96INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
97VALUES (3,'I',232452,'Müller','Hugo',NULL,1);
98INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
99VALUES (4,'I',233456,'Müller','Franz',NULL,4);
100INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
101VALUES (2,'E',NULL,'Suter','Rolf','GigaSoft',NULL);
102INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
103VALUES (5,'E',NULL,'Vogt','Peter','Quasar',NULL);
104INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
105VALUES (6,'I',845622,'Huber','Walter',NULL,3);
106INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
107VALUES (7,'E',NULL,'Krieg','Stefan','Funkenflug',NULL);
108INSERT INTO Kursleiter (KlNr,Status,PNr,Name,Vorname,Firma,Kurserfahrung)
109VALUES (8,'E',NULL,'Freundlich','Andreas','Harmonie',NULL);
110
111INSERT INTO Kursthemen (TNr,Themengebiet)
112VALUES (1,'Sicherheit und Umweltschutz');
113INSERT INTO Kursthemen (TNr,Themengebiet)
114VALUES (2,'Führung und Zusammenarbeit');
115INSERT INTO Kursthemen (TNr,Themengebiet)
116VALUES (3,'PC-Kurse');
117INSERT INTO Kursthemen (TNr,Themengebiet)
118VALUES (4,'Arbeitstechnik');
119INSERT INTO Kursthemen (TNr,Themengebiet)
120VALUES (5,'Projekte');
121INSERT INTO Kursthemen (TNr,Themengebiet)
122VALUES (6,'Schulung');
123
124INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
125VALUES (123,'Arbeitshygiene','2510.EG.25',1);
126INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
127VALUES (562,'Führen einer Gruppe','1010.4.08',2);
128INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
129VALUES (234,'Präsentationstechnik','1010.4.08',4);
130INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
131VALUES (341,'Textverarbeitung','2015.1.10',3);
132INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
133VALUES (245,'Kostenschätzung','1010.2.05',5);
134INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
135VALUES (412,'Tabellenkalkulation','2015.1.10',3);
136INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
137VALUES (454,'Elektrostatische Aufladung','4001.EG.20',1);
138INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
139VALUES (255,'Datenbanken','2015.2.05',3);
140INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
141VALUES (455,'Terminplanung','1010.4.08',5);
142INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
143VALUES (345,'Schwierige Gespräche führen','1010.2.05',2);
144INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
145VALUES (283,'Abfallentsorgung','4001.EG.20',1);
146INSERT INTO Kurse (KNr,Kursbezeichnung,Kursort,TNr)
147VALUES (776,'Wartung von Anlagen','1010.2.05',4);
148
149INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
150VALUES(100001,'Steffen','Felix',3,5);
151INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
152VALUES(232452,'Müller','Hugo',1,1);
153INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
154VALUES(334643,'Meier','Hans',2,5);
155INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
156VALUES(567231,'Schmid','Beat',3,4);
157INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
158VALUES(345727,'Steiner','René',5,5);
159INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
160VALUES(233456,'Müller','Franz',4,7);
161INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
162VALUES(132442,'Osswald','Kurt',1,2);
163INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
164VALUES(345678,'Metzger','Paul',1,1);
165INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
166VALUES(344556,'Scherrer','Daniel',2,4);
167INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
168VALUES(845622,'Huber','Walter',4,8);
169INSERT INTO Personen (PNr,Name,Vorname,FNr,Lohnstufe)
170VALUES(625342,'Gerber','Roland',3,4);
171
172INSERT INTO Kurskontrolle (FNr,KNr) VALUES (1,123);
173INSERT INTO Kurskontrolle (FNr,KNr) VALUES (2,123);
174INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,123);
175INSERT INTO Kurskontrolle (FNr,KNr) VALUES (4,123);
176INSERT INTO Kurskontrolle (FNr,KNr) VALUES (2,562);
177INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,562);
178INSERT INTO Kurskontrolle (FNr,KNr) VALUES (4,562);
179INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,234);
180INSERT INTO Kurskontrolle (FNr,KNr) VALUES (5,234);
181INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,341);
182INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,245);
183INSERT INTO Kurskontrolle (FNr,KNr) VALUES (4,245);
184INSERT INTO Kurskontrolle (FNr,KNr) VALUES (2,412);
185INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,412);
186INSERT INTO Kurskontrolle (FNr,KNr) VALUES (1,454);
187INSERT INTO Kurskontrolle (FNr,KNr) VALUES (2,454);
188INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,454);
189INSERT INTO Kurskontrolle (FNr,KNr) VALUES (4,454);
190INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,255);
191INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,455);
192INSERT INTO Kurskontrolle (FNr,KNr) VALUES (4,455);
193INSERT INTO Kurskontrolle (FNr,KNr) VALUES (4,345);
194INSERT INTO Kurskontrolle (FNr,KNr) VALUES (1,283);
195INSERT INTO Kurskontrolle (FNr,KNr) VALUES (2,283);
196INSERT INTO Kurskontrolle (FNr,KNr) VALUES (3,283);
197INSERT INTO Kurskontrolle (FNr,KNr) VALUES (1,776);
198INSERT INTO Kurskontrolle (FNr,KNr) VALUES (2,776);
199INSERT INTO Kurskontrolle (FNr,KNr) VALUES (5,245);
200
201INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
202VALUES (100001,245,4, STR_TO_DATE('23-Jun-19', '%d-%b-%y'));
203INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
204VALUES (100001,412,2, STR_TO_DATE('7-Aug-17', '%d-%b-%y'));
205INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
206VALUES (100001,454,7, STR_TO_DATE('12-Jan-18', '%d-%b-%y'));
207INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
208VALUES (345678,123,6, STR_TO_DATE('3-Feb-18', '%d-%b-%y'));
209INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
210VALUES (345678,776,3, STR_TO_DATE('15-Apr-19', '%d-%b-%y'));
211INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
212VALUES (344556,412,2, STR_TO_DATE('10-Jun-18', '%d-%b-%y'));
213INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
214VALUES (334643,412,2, STR_TO_DATE('7-Aug-17', '%d-%b-%y'));
215INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
216VALUES (625342,255,1, STR_TO_DATE('21-Jul-19', '%d-%b-%y'));
217INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
218VALUES (845622,345,8, STR_TO_DATE('11-Nov-18', '%d-%b-%y'));
219INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
220VALUES (100001,255,1, STR_TO_DATE('21-Jul-19', '%d-%b-%y'));
221INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
222VALUES (232452,454,7, STR_TO_DATE('17-Sep-18', '%d-%b-%y'));
223INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
224VALUES (132442,454,7, STR_TO_DATE('17-Sep-18', '%d-%b-%y'));
225INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
226VALUES (345678,454,7, STR_TO_DATE('17-Sep-18', '%d-%b-%y'));
227INSERT INTO Kursbesuche (PNr,KNr,KlNr,Datum)
228VALUES (345678,123,4, STR_TO_DATE('25-Aug-19', '%d-%b-%y'));
229
230COMMIT;
231