Wenn beide Datenbanken vom gleichen Server gehostet würden, dann würde deine
SQL-Anweisung funktionieren.
Der MS
SQL Server kann das, bei TurboDB glaub ich das eher nicht.
Also muss die Tabelle Datensatz für Datensatz kopiert werden.
Dazu braucht man zwei Queries:
Delphi-Quellcode:
querysrc.SQL.Text := 'SELECT * FROM TourTable1.WptsTable2 where gccode=12345';
querydst.SQL.Text := 'SELECT * FROM ArchivTable1.WptsTable1 WHERE 0=1'
querysrc.open;
querydst.open;
while not querysrc.Eof do
begin
querydst.Append;
// alle Felder eines Datensatz kopieren
for i := 0 to querydst.Fields.Count-1 do
begin
feldname := querydst.Fields[i].FieldName;
querydst[feldname] := querysrc[feldname];
end;
querydst.Post;
querysrc.Next;
end;
Den Code habe ich ohne Delphi-IDE geschrieben; es können also noch Fehler drin sein.
Es gibt auch noch etwas schnellere Verfahren (man erzeugt INSERT-Statements zur Laufzeit),
aber das gezeigte Verfahren ist recht einfach und passt auf alle Tabellen mit gleicher Struktur.