Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Fibplus und Transactionen (https://www.delphipraxis.net/102162-fibplus-und-transactionen.html)

hanspeter 24. Okt 2007 14:09

Datenbank: Firebird • Zugriff über: FIBPLUS

Fibplus und Transactionen
 
Ich stelle gerade ein Programm von Ibobjects auf Fibplus um und da werden Transactionen ja
etwas anderst gehandelt.
Kann mir wer einen kurzen Tip zum Verständnis geben ?

Also TDatabase -> defaulttransaction -> Transaction.

Hier ist normal Starttransaction , Commit möglich.

Funktionieret es, jetzt eine eingebettete Transaction auszuführen.

Transaction2 wird mit der gleichen Database verbunden.

Delphi-Quellcode:
Transaction1.StartTransaction

  Transaction2.Starttransaction;
    Update_Irgend_was;
  Transaction2.Commit;

Transaction1.Commit;
Im Kontext der 1. Transaction wird z.B. ein Grid angezeigt und im Kontext der eingebetteten
Transaction wird irgendein SQL Befehl ausgeführt.

Für einen Tip dankbar.
Gruß Peter

MrSpock 24. Okt 2007 14:56

Re: Fibplus und Transactionen
 
Hallo Peter,

die Transaktionen wären in diesem Fall unabhängig voneiander und der "isolation level" legt fest, wie sich gegeneinander abgrenzen. Eine "embedded" transaction gibt es aber nicht.

hanspeter 24. Okt 2007 15:08

Re: Fibplus und Transactionen
 
Zitat:

Zitat von MrSpock
Hallo Peter,

die Transaktionen wären in diesem Fall unabhängig voneiander und der "isolation level" legt fest, wie sich gegeneinander abgrenzen. Eine "embedded" transaction gibt es aber nicht.

Bei Fibplus ist wohl alles ein bischen anderst.

Ich habe TDBMode auf tpbReadCommitted gesetzt, da sollte ich mein Ziel wohl erreichen.

Gruß
Peter

Hansa 25. Okt 2007 00:17

Re: Fibplus und Transactionen
 
Such auf www.devrace.com hiernach : "Transactions in InterBase/Firebird: how to use them in FIBPlus" 4-teiliger Artikel. Prinzipiell ist das Grundlagenwissen. Hier ist allerdings auch noch eine Frage in der Richtung Transactions nicht gelöst. Zu den embedded Transactions : da würde ich mal die Logik des Programms überprüfen und überlegen, ob nicht SavePoints in Betracht kommen. Also im Programm : SetSavePoint, RollbackToSavePoint, CommitToSavePoint usw. Ist ja alles vorhanden und wird hier auch konkret eingesetzt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:51 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz