Einzelnen Beitrag anzeigen

mannewolff

Registriert seit: 21. Okt 2008
48 Beiträge
 
RAD-Studio 2009 Arc
 
#1

Transaktionen bei DBExpress mit MySQL

  Alt 16. Jun 2009, 11:32
Datenbank: MySQL • Version: 5.0 • Zugriff über: DBExpress
Moin.

Ich habe versucht in obiger Konfiguration eine Transaktion durchzuführen, wobei ich sowohl die Connectio in einem Modul als auch die SQL's in Fachobjekten habe:

Delphi-Quellcode:
function TFrameBestellanfrage.saveBestellposition : boolean;
var
  ...
  transaction : TDBXTransAction;
begin
  ...
  transaction := DatenModul.SQLConnection.BeginTransaction();
  try
    lastbestellposition.save();
    if neu then
    begin
       Zuordnung := TAnfrageZuBestellposition.Create();
       Zuordnung.FK_ANFRAGE := lastAnfrage.id;
       Zuordnung.FK_BESTELLPOSITION := lastbestellposition.id;
       Zuordnung.save();
       Zuordnung.Free();
    end;
    DatenModul.SQLConnection.CommitFreeAndNil(transaction);
    except
      DatenModul.SQLConnection.RollbackFreeAndNil(transaction);
  end;
  setMustSave(false);
end;
Manchmal geht es gut, manchmal bekomme ich eine Exception.

Frage: Ist der Weg denn korrekt, dann kann ich weitersuchen.

-manne
  Mit Zitat antworten Zitat