Guten Morgen...
unabhängig von der Frage eine Bemerkung. Transaktionen sollten so kurz wie möglich offen gehalten werden. Schon gar nicht über die Programmlaufzeit. Denkanstoß: Was passiert wenn eine Transaktion offen ist und die Putze den Stecker vom Computer rauszieht ?
Der bessere Weg ist die Daten z.B. in Objekten / Listen zu halten, ein Event bei Änderungen auslösen, das Objekt in eine "Changed List" eintragen und ggf. ein Changed Flag setzen. Diese Daten können dann in einem schnellen Rutsch aktualisiert werden.