Files
mysql-db-vorlesung/10-testcases.sql
Sebastian Seedorf ff6962de52 initial commit
2020-12-06 12:40:52 +01:00

38 lines
1.7 KiB
SQL

-- -- Eine Sitz in einer Vorstellung mehrfach reservieren
-- -- Eine Vorstellung über add_vorstellung mit ungültigem Saal oder Film
-- -- Eine Beziehung über add_schauspieler_film mit ungültigem Schauspieler oder Film
-- -- Einen Saal über add_saal mit ungültigem Kino
-- -- Einen Sitz über reservieren oder add_reservieren_sitz mit ungültiger Position hinzufügen
-- -- Keine Schauspieler-Geburtstage vor 1900 und nach 2100
INSERT INTO Schauspieler (Vorname, Nachname, Geburtstag) VALUES ('Nicht', 'So', STR_TO_DATE('1.3.2237', '%e.%c.%Y'));
INSERT INTO Schauspieler (Vorname, Nachname, Geburtstag) VALUES ('So', 'Auch-Nicht', STR_TO_DATE('1.3.1837', '%e.%c.%Y'));
-- -- Mit einer ungültigen Mail-Adresse reservieren
SET @resID1 := reservieren('Kino 1', STR_TO_DATE('6.5.2017 22:00', '%e.%c.%Y %H:%i'), 'Peter', 'Ustinov', '@gmx.de', 10, 10);
-- -- Keine Preise über 100 Euro für einen Sitz
CALL update_preis('Kino 1', 50, 50, 1, 35, 130);
CALL update_preis('Kino 1', 50, 50, 1, 35, 100.5);
-- -- Überlappende Vorstellungen
CALL add_vorstellung('Kino 1', 'Alan und die Wundertüte', STR_TO_DATE('2.5.2017 21:20', '%e.%c.%Y %H:%i'));
UPDATE Film SET Spieldauer=200 WHERE Name='Tarkan, der Herr des Dschüngels';
UPDATE Vorstellung
SET Beginn = STR_TO_DATE('2.5.2017 14:20', '%e.%c.%Y %H:%i')
WHERE ID = 26; -- 2.5.2017 21:10 in Kino 1
-- -- Registrierungen loggen
-- Schon belegt wird aufgrund der Beschränkungen von MysQL nicht geloggt (kein PRAGMA AUTONOMOUS_TRANSACTION)
SET @resID_test := reservieren('Kino 3', STR_TO_DATE('6.5.2017 18:00', '%e.%c.%Y %H:%i'), 'Mark', 'Müller', 'mueller17@gmail.com', 5, 8);
CALL add_reservieren_sitz(@resID_test, 5, 9);
CALL add_reservieren_sitz(@resID_test, 5, 10);