20 lines
872 B
Markdown
Executable File
20 lines
872 B
Markdown
Executable File
# ADR-005: Idempotente Schema-Migrationen statt Migrationstool
|
||
|
||
**Datum:** 2026-07-15 · **Status:** Akzeptiert
|
||
|
||
## Kontext
|
||
Bestehende Prod-DB (Flask-Ära) musste ohne Migrationsschritt weiterverwendet
|
||
werden; das Projekt hat genau eine schema.sql-Historie und wenige Releases.
|
||
|
||
## Entscheidung
|
||
`schema.sql` bleibt die einzige Quelle: CREATE TABLE IF NOT EXISTS +
|
||
ADD COLUMN IF NOT EXISTS + einmalige, selbstneutralisierende UPDATEs.
|
||
Wird beim App-Start per `include_str!` komplett ausgeführt (batch_execute).
|
||
|
||
## Konsequenzen
|
||
+ Kein Migrationstool, keine Versionstabelle, Deploy = Start.
|
||
+ Kompilierzeit-Einbettung: Binary und Schema sind untrennbar konsistent.
|
||
− Destruktive Änderungen (DROP/RENAME) brauchen künftig explizite Sorgfalt
|
||
oder den Wechsel auf ein echtes Migrationstool — akzeptiert für die
|
||
aktuelle Projektgröße. Additiv-only ist Konvention.
|