Thema: Delphi Transactionen

Einzelnen Beitrag anzeigen

hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Transactionen

  Alt 24. Aug 2009, 09:43
Hallo,

jeder hat mal angefangen,
also nicht immer gleich losschreien


Zitat:
jetzt bekomme ich immer wieder die Meldung Transaction ist aktiv
Die Meldung ist doch aussagekräftig, oder ?
Irgendwo wird die Transaktion doch nicht geschlossen

Dein Code

Delphi-Quellcode:
procedure TDM.sSql(Sql : String);
begin
  IBTransaction1.StartTransaction;
  IBSQL1.SQL.Clear;
  IBSQL1.SQL.Text := Sql;
  IBSQL1.ExecQuery;
  IBTransaction1.Commit;
end;

Mein Code:

Delphi-Quellcode:
procedure TDM.sSql(Sql : String);
begin
  IBTransaction1.StartTransaction;
  try
    try
      IBSQL1.SQL.Clear;
      IBSQL1.SQL.Text := Sql;
      IBSQL1.ExecQuery;
    except
      IBTransaction1.RollBack;
    end;
  finally
    if IBTransaction1.InTransaction then
    begin
      IBTransaction1.Commit;
    end;
  end;
end;
Das begin/end beim Commit erlaubt es übrigens,
einen Breakpoint zu setzen (bei der Fehlersuche ganz hilfreich)

Nutze als try/except, try/finally wie ich.


Eine letzte Sache, die DataBases/Transaktionen sollten nicht im Object-Inspector
geöffnet/aktiv gesetzt werden.



Heiko
Heiko
  Mit Zitat antworten Zitat