are you sure, that
Code: Select all
OldTransactionBehaviour := true;works?
I have a TUniConnection and a TUniQuery and made some inserts:
Code: Select all
UniConnection1.StartTransaction;
okay := true;
for i := 0 to MyStringList.Count - 1 do
begin
Bef := 'insert into AUFTRAGSSTUECKLISTE values (...)';
UniQuery1.SQL.Clear;
UniQuery1.SQL.Add (Bef);
try
UniQuery1.Execute;
except
okay := false;
break;
end; { try .. except }
end; { for i }
if Okay
then UniConnection1.Commit
else UniConnection1.Rollback;The problem is that after the rollback all inserted records are in the database!!!24.01.2017 20:12:56 0,000 SQL Execute: insert into AUFTRAGSSTUECKLISTE values ('AU','236561','1','10552','0','1',Null,'1','J','15307','0','Vierkant 40 AlCuMgPb, gezogen',Null,'0.024',Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null)
Complete
24.01.2017 20:12:56 0,000 CommitRetaining: Complete
24.01.2017 20:12:56 0,000 SQL Execute: insert into AUFTRAGSSTUECKLISTE values ('AU','236561','1','16673','0','2',Null,'2','J','16669','0','Tasterkolben Ø8x32',Null,'1.000',Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null)
Complete
24.01.2017 20:12:56 0,000 CommitRetaining: Complete
24.01.2017 20:12:56 0,000 SQL Execute: insert into AUFTRAGSSTUECKLISTE values ('AU','236561','1','16669','0','1',Null,'1','J','15085','0','Rund 008 AlCuMgPb gepreßt F38',Null,'0.036',Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null,Null)
Error: violation of PRIMARY or UNIQUE KEY constraint "IXAUFTRAGSSTCKLPOS1MULTIKEY1" on table "AUFTRAGSSTUECKLISTE"
24.01.2017 20:12:56 0,000 CommitRetaining: Complete
24.01.2017 20:12:56 0,000 Rollback: Complete
I'm sure, rollback works in UniDAC 4.5.9.
Please take a look at this problem. It cost me all day...
Kind regards,
Gerd Brinkmann
invent GmbH