Forum: Datenbanken
Delphi
by RSE,
13. Jul 2012
Ich halte somit als Antwort fest: Embarcadero hat das nicht in letzter Konsequenz umgesetzt bzw. nicht dokumentiert.
Damit sehe ich die Frage als beantwortet an.
Forum: Datenbanken
Delphi
by RSE,
12. Jul 2012
Das hatte ich auch gefunden, gehört zu einem als deprecated gekennzeichneten Verfahren der Transaktionssteuerung mit StartTransaction.
Edit: Wie verschachtelte Transaktionen zugeordnet werden, ist auch nicht explizit in der Hilfe gesagt. Man kann nur vermuten, dass jede Operation immer der zuletzt gestarteten und noch nicht beendeten Transaktion zugeordnet wird. Oder zählt der Zeitpunkt des...
Forum: Datenbanken
Delphi
by RSE,
12. Jul 2012
So weit, so klar, nur bei folgendem Quelltext (untested) ist die Zuordnung Transaktion - Operation in meinen Augen nicht möglich.
TA1 := Conn.BeginTransaction;
TA2 := Conn.BeginTransaction;
DataSet1.Open; // TA1
u := DataSet1.FieldByName('USER_ID').AsInteger; // TA1
DataSet1.Close; // TA1
DataSet2.Open; ...
Forum: Datenbanken
Delphi
by RSE,
11. Jul 2012
Logisch. Hat sie bei meiner Verbindung zu Firebird. Ich meinte dbExpress kann grundsätzlich damit umgehen.
Soweit war mir das klar. Wie ich das TDBXTransaction-Objekt mit einer Transaktion zu benutzen habe, ist mir auch klar. Was mir nicht klar ist: Wie kann ich eine Operation einer Transaktion zuordnen? Bei anderen Komponenten muss man bei den DataSets die Transaktion angeben, damit gehören...
Forum: Datenbanken
Delphi
by RSE,
11. Jul 2012
Mir ist bekannt, dass das ein schlechtes Beispiel ist, aber es ist anschaulich. Ich möchte einfach wissen, wie man eine zweite unabhängige Transaktion über die gleiche Connection mit dbExpress handelt. Stelle dir vor, die zwei Formulare laufen in unterschiedlichen Threads und beide werden gleichzeitig bestätigt (wieder schlechtes Beispiel, bestimmt braucht jeder Thread seine eigene Connection)...
Forum: Datenbanken
Delphi
by RSE,
11. Jul 2012
Hallo,
ich versuche mich gerade in die dbExpress-Komponenten unter Delphi XE Enterprise einzulesen. TSQLConnection hat eine Eigenschaft MultipleTransactionsSupported, die stark darauf schließen lässt, dass man mit mehreren Transaktionen gleichzeitig arbeiten kann. Mit TSQLConnection.StartTransaction und TCustomSQLDataSet.TransactionLevel könnte ich mir ungefähr vorstellen, wie das...