Einzelnen Beitrag anzeigen

Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#31

AW: Firebird - Mehrere abhängige SQLs in einer Transaktion

  Alt 26. Jan 2016, 15:45
Jetzt bleibt wohl nichts anderes übrig als eine Datensicherung zurückzuspielen wenn was schief läuft aber falls es so funktioniert hätte wie ich dachte und man bedingungslos komplette Skripte zurückrollen könnte dann wäre ein Fehler in einem Skript deutlich harmloser und man müsste bloß den Fehler beheben und das Skript erneut ausführen. So war jedenfalls meine Vorstellung.
Dann zerlege dein Script in kleine atomare Schritte:
1. Tabelle anlegen
2. Generator anlegen
3. Trigger anlegen
4. Daten einspielen
5. Update Bestandsdaten

bricht es an einer Stelle ab, dann hast Du eben keinen undefinierten Stand, da du genau nachvollziehen kannst an welcher Stelle das Script mit welcher Meldung abgeraucht ist (-> das stimmt natürlich bei umfangreichen UPDATE Statements nicht). Dann die Ursache korrigieren und die Scriptausführung fortsetzen - das macht dann idealerweise dein Updateprogramm, da es sich in einer Hilfstabelle merkt in welcher Version (sprich welches Script) und an welchem Schritt die letzte Ausführung stehen geblieben ist
  Mit Zitat antworten Zitat