Einzelnen Beitrag anzeigen

Kostas

Registriert seit: 14. Mai 2003
Ort: Gerstrhofen
1.061 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

Vista bremst extrem bei inserts in Firebird 1.5 DB

  Alt 20. Apr 2008, 13:47
Datenbank: Firebird • Version: 1.5 • Zugriff über: IBO
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
  Mit Zitat antworten Zitat