Ich bin mir nicht sicher, ob es überhaupt eine Lösung mit automatischer Abwicklung von verketteten/mehrstufigen Transaktionen gibt, die zuverlässig funktioniert (oder nicht viele Ressourcen auf Datenbankseite benötigt)
Nun, Sie könnten beide Schritte zu einem kombinieren:
- aus erster Tabelle A lesen
- Prozessor verwenden, um Tabelle A zu aktualisieren
- Prozessor verwenden, um aus Tabelle B zu lesen
- Writer verwenden, um Tabelle B zu aktualisieren
Die Leistung wird stark darunter leiden, da der Lesevorgang für Tabelle B ein einzelner Lesevorgang im Vergleich zum Cursor für Tabelle A ist
Ich würde mit einer kompensierenden Strategie wie dieser gehen
- Verwendete (optionale) Tabellen sind temporäre Tabellen und nicht die echten "Produktions"-Tabellen, was es einfacher macht, mit dem Kompensieren zu arbeiten, indem die Datenspeicher von der Produktion entkoppelt werden
- ein fehlgeschlagener Schritt 1 löst einen weiteren Schritt aus oder ein anderer Job/Skript
- dieser Schritt/Job/dieses Skript löscht nach Bedarf (Zeilen oder komplette Tabelle)