Hallo Zusammen,
ich habe zwei Datenbanken. Über ein TIB_Cursor wird eine Datenmenge von der DB1 selectiert und über ein
TIB_DSQL in die DB2 eingefügt. Es werden etwa 2000 Datensätze kopiert.
Unter Vista 32Bit und 64Bit werden ca 60 Records eingefügt danach bleibt das Process stehen für etwa 1-3 Minuten
und fügt die nächsten 60-200 Datensätze ein, bleibt wieder kleben u.s.w.
Die gleiche kompilierte Exe auf XP oder Win2000 läuft komplett durch.
Interessant ist, wenn ich eine Verweilzeit von 0.01 Sekunde für jeden Record einbaue, läuft es auch unter
Vista komplett durch.
Delphi-Quellcode:
while not cuExportPaesse.eof do
begin
waitxsec(0.01); <<< Vista Bremse zum Beschleunigen
Inc(count2);
sb1.Panels[1].Caption := Format('%d Pässe',[count2]);
dsPaesse.ParamByName('PASSNR').AsInteger := cuExportPaesse.FieldByName('PASSNR').AsInteger;
dsPaesse.ParamByName('SCHUETZE').AsString := cuExportPaesse.FieldByName('SCHUETZE').AsString;
dsPaesse.ParamByName('VEREIN_ID').AsInteger := cuExportPaesse.FieldByName('VEREIN_ID').AsInteger;
dsPaesse.ParamByName('VEREINSNR').AsInteger := cuExportPaesse.FieldByName('VEREINSNR').AsInteger;
dsPaesse.ParamByName('KURZNAME').AsString := cuExportPaesse.FieldByName('KURZNAME').AsString;
dsPaesse.ExecSQL;
cuExportPaesse.next;
application.ProcessMessages;
end;{while}
Hat jemand eine Idee was der Unsinn soll?
Gruß Kostas