Guten Tag,
ich habe in einem Buch für Interbase gelesen, dass Daten nur im Rahmen einer Transaktion gespeichert werden können und sollen.
Zur Zeit speicher ich die Daten einzelner Spalten so:
Delphi-Quellcode:
dtmdMain.DoStartTransaction;
if dtmdMain.arbeitsplan.State in [dsEdit] then
dtmdMain.arbeitsplan.Post;
dtmdMain.ibtrnsctnLoge.CommitRetaining;
In der Procedure "dtmMain.DoStartTransaction" geschieht folgendes:
Delphi-Quellcode:
procedure TdtmdMain.DoStartTransaction;
begin
if not ibtrnsctnLoge.InTransaction then ibtrnsctnLoge.StartTransaction;
end;
Meine Fragen dazu sind folgende:
Ist es nicht sinnvoller die Speicherung so zu implementieren.
Delphi-Quellcode:
if dtmdMain.arbeitsplan.State in [dsEdit] then
begin
dtmdMain.DoStartTransaction;
dtmdMain.arbeitsplan.Post;
dtmdMain.ibtrnsctnLoge.CommitRetaining;
end;
und, wie ist es sinnvoller, wie ist Eurer Verfahren?
Vielen Dank für Eure Hilfen.