Du könntest viele (~500) INSERT - Anweisungen in einer Stringliste zwischen speichern
und dann in einem Rutsch ausführen.
Diese würde den Netzwerkverwerk deutlich reduzieren, da statt vieler kleiner Pakete
nur wenige grosse Pakete gesendet würden.
Dies geht aber nur, wenn die Datenbank, die Treiber und die Zeos-Komponenten diese mehrfachen
Befehle unterstützen (MS
SQL Server +
ADO kann das).
Mach einfach einen Test:
Delphi-Quellcode:
// Beispiel für 2 Insert auf einmal
// SQL Anweisungen mit ; getrennt
DM.ZQ.SQL.Clear;
dm.ZQ.SQL.Add('
INSERT INTO ASSET_DATA Values(20, 30, 'Test1);'
);
dm.ZQ.SQL.Add('INSERT INTO ASSET_DATA Values(20, 60, '
Test2);');
dm.ZQ.ExecSQL;
Auserdem:
Delphi-Quellcode:
var
qry : TQuery;
begin
qry := dm.ZQ;
// jetzt wird nur noch mit "qry" gearbeitet; dies spart etwas Rechenzeit
qry.SQL.Clear;
qry.SQL.Add('INSERT INTO ASSET_DATA');
...