Add SQLite adventure DB initializer

This commit is contained in:
DylanBarnes 2026-07-01 14:35:00 +00:00
parent 2b45e7e279
commit e2f4e0165f

50
app/init_db.py Normal file
View file

@ -0,0 +1,50 @@
import sqlite3
# Die Datenbank entsteht auf dem Server beim einmaligen Aufruf
# und bleibt dort unverändert erhalten.
db = sqlite3.connect("adventure.db")
db.executescript("""
DROP TABLE IF EXISTS raeume;
DROP TABLE IF EXISTS ausgaenge;
CREATE TABLE raeume (
id INTEGER PRIMARY KEY,
name TEXT,
beschreibung TEXT,
raetsel_frage TEXT,
raetsel_antwort TEXT
);
CREATE TABLE IF NOT EXISTS ausgaenge (
von_raum INTEGER,
richtung TEXT,
nach_raum INTEGER
);
INSERT INTO raeume (id, name, beschreibung, raetsel_frage, raetsel_antwort) VALUES
(1, 'Schlafkapsel', 'Du erwachst aus dem Kryoschlaf. Die Notbeleuchtung flackert und das Schiff wirkt verlassen.', NULL, NULL),
(2, 'Brücke', 'Die Steuerzentrale ist dunkel. Mehrere Monitore zeigen Fehlermeldungen.', NULL, NULL),
(3, 'Maschinenraum', 'Überall verlaufen Rohre und Kabel. Die Hauptenergie scheint instabil zu sein.', NULL, NULL),
(4, 'Forschungslabor', 'Verlassene Arbeitsplätze und zerbrochene Glasbehälter lassen nichts Gutes vermuten.', NULL, NULL),
(5, 'Hangar', 'Die Landebucht ist leer. Nur ein beschädigtes Shuttle steht noch dort.', NULL, NULL),
(6, 'KI-Kern', 'Vor dir befindet sich der zentrale Computer des Schiffs. Nur hier kann das Notsignal aktiviert werden.', 'Gib den Notcode ein, um das Signal zu senden.', 'SOS');
INSERT INTO ausgaenge (von_raum, richtung, nach_raum) VALUES
(1, 'Zur Brücke', 2),
(1, 'Zum Maschinenraum', 3),
(1, 'Durch die Schleuse', 5),
(2, 'Zurück', 1),
(2, 'Zum Forschungslabor', 4),
(3, 'Zurück', 1),
(3, 'Durch den Wartungsschacht', 4),
(3, 'Mit dem Fahrstuhl', 6),
(4, 'Zurück', 2),
(4, 'Zum KI-Kern', 6),
(5, 'Zurück', 1),
(5, 'Mit dem Fahrstuhl', 6);
""")
db.commit()
db.close()
print("Datenbank adventure.db angelegt.")