Deine Art, die Daten rüber zu schaufeln, ist zwar
ADO-Konform, aber eben lahm. Um das schnell(er) zu machen, fallen mir 3 Dinge ein:
1. Transaktionen verwenden
2.
SQL-Kommandos selber basteln.
3. Einen Index auf den Primary Key der Target-Tabelle
Zu 2 solltest Du abhängig davon, ob der PK vorhanden ist, oder nicht eine INSERT oder UPDATE Anweisung aufbauen, deren WHERE-Klausel nur die Primary Key Bedingung enthält. Also ungefähr so:
SQL-Code:
UPDATE Target
SET Field1 = <Value1>,
Field2 = <Value2>,
....
WHERE IDField = <ID>
bzw.
SQL-Code:
INSERT INTO Target
(IDField, Field1, Field2 ....)
VALUES
(<ID>, <Value1>, <Value2> ...)
Mit
ADO sind die vom Provider generierten
SQL-Kommandos alles Andere als optimal. Schau Dir die mal an.