Files
EinsatzplanQT/script.sql
Chris-bot374 77125362f6 Update script.sql
bugfix
2024-07-01 13:32:27 +02:00

103 lines
3.8 KiB
SQL

CREATE SEQUENCE global_id_seq;
CREATE TABLE Studenten (
matrikelnummer INTEGER PRIMARY KEY DEFAULT nextval('global_id_seq'),
"name VARCHAR(30) NOT NULL,
"email VARCHAR(30) NOT NULL,
"passwort VARCHAR(30) NOT NULL);
"CREATE TABLE Veranstalter (
ID INTEGER PRIMARY KEY DEFAULT nextval('global_id_seq'),
name VARCHAR(30),
email VARCHAR(30),
passwort VARCHAR(30),
admin BOOLEAN NOT NULL DEFAULT(FALSE)
);
CREATE TABLE krank (
veranstalter_ID INTEGER,
FOREIGN KEY (veranstalter_ID) REFERENCES veranstalterrrr(ID) ON DELETE CASCADE);
CREATE VIEW studenten_veranstalterr AS
SELECT matrikelnummer AS id, passwort, NULL AS admin FROM Studenten
UNION ALL
SELECT ID, passwort, admin FROM Veranstalterrrr;
CREATE TABLE Veranstaltung (
ID SERIAL PRIMARY KEY,
ort VARCHAR(30) NOT NULL,
raum VARCHAR(30) NOT NULL,
name VARCHAR(30) NOT NULL );
CREATE TABLE Uhrzeit (
ID SERIAL PRIMARY KEY,
anfangszeit TIME NOT NULL,
endzeit TIME NOT NULL );
INSERT INTO Uhrzeit (anfangszeit, endzeit) VALUES
('08:00:00', '10:00:00'),
('10:00:00', '12:00:00'),
('12:00:00', '14:00:00'),
('14:00:00', '16:00:00'),
('16:00:00', '18:00:00');
CREATE TABLE Veranstalter_Veranstaltung_Uhrzeit (
uhrzeit_ID INTEGER REFERENCES Uhrzeit(ID),
tag INTEGER NOT NULL,
veranstalter_ID INTEGER REFERNECES Veranstalter(ID),
veranstaltung_ID INTEGER REFERENCES Veranstaltung(ID),
PRIMARY KEY(uhrzeit_ID, tag)
);
INSERT INTO Veranstalter (name, email, passwort, admin) VALUES
('tech_guru', 'admin@example.com', 'password123', TRUE),
('code_master', 'user1@example.com', 'password1', FALSE),
('binary_hero', 'user2@example.com', 'password2', FALSE),
('debug_ninja', 'user3@example.com', 'password3', FALSE),
('data_wizard', 'user4@example.com', 'password4', FALSE),
('script_samurai', 'user5@example.com', 'password5', FALSE),
('dev_genius', 'user6@example.com', 'password6', FALSE),
('cyber_maven', 'user7@example.com', 'password7', FALSE),
('net_knight', 'user8@example.com', 'password8', FALSE),
('bit_boss', 'user9@example.com', 'password9', FALSE),
('sys_sensei', 'user10@example.com', 'password10', FALSE),
('crypto_champ', 'user11@example.com', 'password11', FALSE),
('cloud_conqueror', 'user12@example.com', 'password12', FALSE),
('hack_whiz', 'user13@example.com', 'password13', FALSE),
('matrix_mage', 'user14@example.com', 'password14', FALSE),
('app_artisan', 'user15@example.com', 'password15', FALSE),
('ai_architect', 'user16@example.com', 'password16', FALSE),
('tech_titan', 'user17@example.com', 'password17', FALSE),
('proto_pro', 'user18@example.com', 'password18', FALSE),
('alg_adept', 'user19@example.com', 'password19', FALSE),
('data_diver', 'user20@example.com', 'password20', FALSE),
('web_warrior', 'user21@example.com', 'password21', FALSE),
('os_overlord', 'user22@example.com', 'password22', FALSE),
('kernel_keeper', 'user23@example.com', 'password23', FALSE);
INSERT INTO Veranstaltung (ort, raum, name, dauer) VALUES
('A', '101', 'Grundlagen der Programmierung', 2),
('B', '202', 'Algorithmen und Datenstrukturen', 4),
('A', '103', 'Netzwerkgrundlagen', 2),
('B', '204', 'Betriebssystemkonzepte', 4),
('A', '105', 'Softwareentwicklung', 2),
('B', '206', 'Intelligente Systeme', 4),
('A', '107', 'Datenbanksysteme', 2),
('B', '208', 'Webtechnologien', 2),
('A', '109', 'Computergrafikgrundlagen', 2),
('B', '210', 'Maschinelles Lernen', 2);