Moin alle...
ich habe ein DBFramework gebastelt was den kompletten Zugriff auf die
DB kapselt. Von außen kann ich eine Transaktion erzeugen, committen oder zurücknehmen. Die Transaktion wird als privates Feld des
DB Frameworks verwaltet und den Querys zugeordnet.
Bei einfachen Objekten kein Problem. Ich kann von außen steuern wieviele und verschiedene Objekte in einer Transaktion laufen. Jetzt gibt es aber auch Objekte welche in verschiedene Tabellen schreiben. Dazu hatte ich schon in der jeweiligen Prozedure eine Transaktion für das Objekt gemacht.
Wie kann ich eine "globale Transaktion" erzeugen und innerhalb dieser eine zusätzliche laufen lassen. Im Prinzip ist die Frage welche Transaktion ich welcher
Query zuordne.
Mögliche Lösung:
Unterscheidung im
DB ob FTransaction nil ist und entsprechend die von außen erzeugte Transaktion nutzen oder die innerhalb der Prozedur erzeugte. Ist das sauber ?
Zum Verständnis:
Wenn ich nur 1 einfaches Objekt dem
DB Framework übergebe brauche ich von außen keine Transaktion. Wenn ich eine Liste abarbeite hätte ich gern die ganze Liste in einer Transaktion. Deshalb die externe Erzeugung.
Danke für Info´s