Wieso setzt Du innerhalb der Schleife jedesmal die
SQL-Eigenschaft neu? Und fehlt da nicht ein MATCHING in Deinem Statement?
Pseudocode
Die Schleife und der Inhalt sind im echten Code ganz weit von einander weg und entkoppelt, dass es nur so geht. Ich kann nur den Inhalt in der Schleife kontrollieren. Ob da nun eine String-Eigenschaft (
SQL.Text) mehrfach gesetzt wird oder nicht sollte von der Geschwindgkeit unter den Tisch fallen...
Nein. Absolut nicht, weil man dann den Vorteil der Parameter nicht hat
Delphi-Quellcode:
Transaction.StartTransaction;
Query.SQL.Text := '
Update or insert into foo (A, B, C) values (:a, :b, :c)';
for i := 0
to 2000
do
begin
Query.ParamByName('
a').AsString := '
v1';
Query.ParamByName('
b').AsString := '
v2';
Query.ParamByName('
c').AsString := '
v3';
Query.Execute;
end;
Transaction.Commit;