Diese Seite (Admin → Aktionen → „Schema-Check") vergleicht das im Code definierte Datenbank-Schema mit dem tatsächlichen Stand Deiner Datenbank und repariert Abweichungen auf Knopfdruck. Du brauchst sie vor allem nach einem Code-Update, das neue Tabellen, Spalten oder Default-Daten mitbringt.
ℹ️ Wenn etwas am Schema fehlt, warnt das ETB von selbst über den Schema-Banner in der Sidebar — der Admin sieht dort den Direkt-Link hierher.
Was die Seite zeigt
Oben steht eine Status-Zeile mit vier Zahlen: Tabellen vorhanden, Tabellen fehlen, Spalten veraltet und Tabellen im Code definiert. Darunter erscheinen je nach Befund eigene Karten:
- Veraltete Spalten-Definitionen — eine Spalte in der DB stimmt nicht
mehr mit dem Code überein. Typischer Fall: eine ENUM-Spalte (z. B.
users.role), die einen neuen Wert noch nicht kennt, sodass das Feld beim Speichern leer bleibt. - Fehlende Tabellen — Tabellen, die der Code erwartet, aber in der DB noch nicht existieren.
- Schema vollständig — alles da; hier kannst Du trotzdem die Indizes nochmal prüfen lassen (idempotent, legt nichts Neues an).
Ganz unten listet die Seite alle Tabellen des Code-Schemas auf — vorhandene unauffällig, fehlende hervorgehoben.
Reparieren
Je nach Befund steht ein Button bereit („Fehlende Tabellen jetzt anlegen", „Spalten jetzt migrieren" oder „Indizes nochmal prüfen"). Nach der Bestätigung erledigt der Schema-Check alles Nötige in einem Rutsch:
- fehlende Tabellen anlegen (
CREATE TABLE IF NOT EXISTS— bestehende bleiben unangetastet; z. B. die Rollen-Angebote des Alarm-Knopfs), - fehlende Indizes nachziehen,
- veraltete Spalten migrieren (z. B. ENUM erweitern),
- fehlende Default-Daten ergänzen (z. B. Status-Stufen, Rollen-Rechte, die UW-ERSTALARM-Regel),
- einmalige Daten-Korrekturen ausführen — z. B. alte Einsatzkräfte-Stärkewerte auf das Schema A/B/C/S normalisieren (damit die Gesamtzahl überall zur Summe der drei Positionen passt), die Suffix-Spalten für das Adress-Suffix je Ort anlegen oder die Schwerpunkt-Status-Labels von „Geschlossen"/„Archiviert" auf „Erledigt"/„Abgeschlossen" umbenennen (nur unveränderte Werks-Labels; selbst angepasste bleiben unberührt).
Eine Erfolgsmeldung fasst zusammen, was angelegt, ergänzt oder migriert wurde; eigene Karten listen die Details.
⚠️ Hatte ein Benutzer durch eine veraltete ENUM-Spalte eine leere Rolle bekommen (sah aus wie „nicht übernommen"), repariert die Spalten-Migration das nicht automatisch — die Rolle danach unter Admin → Benutzer nachpflegen.
ℹ️ Reparieren darf nur, wer das Recht
admin.confighat. Bestehende Daten bleiben bei allen Schritten erhalten.
Was als nächstes?
- Diagnose & Werkzeuge — die übrigen Werkzeuge
- Backup & Updates — wie Du sicher upgradest