Einzelnen Beitrag anzeigen

omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#56

Re: Firebird Import aus Textdatei extrem langsam

  Alt 17. Sep 2009, 12:46
Zitat von hoika:
du rufst nach jedem Insert Application.ProcessMessages; auf.

Ich würde das ändern
Das hatte ich getestet und das brachte keine zeitliche Verbesserung.

Zitat von hoika:
Da du ja hier eh einen Zähler (Fzeile) hast,
könnte man auch den Tip mit Commit/StartTransaction einbauen
Hast du das mal ausprobiert, ich könnte mir vorstellen, dass das gar nichts bringt.

Zitat von hoika:
Dazu muss einfach die FBClient.DLL ausgetauscht werden,
das Programm sollte im Idealfall davon gar nix mitbekommen.

Die embedded-Variante der FBClient-Dll implementiert den SQL-Server
selber und reicht die Befehle nicht weiter wie die normale DLL.
Hast du mal in mein Archiv geschaut, da sind alle möglichen, benötigten DLLs drin. Ich hatte auch geschrieben, dass ich das mit FlameRobin ausprobiert hatte, die selbe DLL und auch im Embedded-Modus.

Zitat von hoika:
Zusätzlich müssen noch ein paar Dateien in ein Unterverzeichnis,
Infos dazu hier (Suche) oder einfach mal Frau Google fragen.
Ja wunderbar, selbst wird man mal konkret und erhält nur nicht getestete "womöglich Vorschläge".

Zitat von IBExpert:
und wenn du deinen import noch mal richtig beschleunigen willst, dann bau in deinem Delphi Programm deine Textdatei auf ein fixedformat um (also pro spalte eine feste anzahl an zeichen, nicht genutzte mit Leerzeichen auffüllen). Danach schaust du dir die Deaklaration eines external files in Firebird an (geht in IBExpert mit einem assisetnten im Table editor, wichtig: in der Firebird conf vorher ein directory für external files freigeben.
Genau das war meine erste beschriebene Idee, die (wie ebenfalls geschrieben) mit FlameRobin zu den oben erwähnten Zeiten kommt, aber eben leider nicht aus Delphi heraus funktioniert.

Was soll das? Habt ihr auch mal gelesen, was ich geschrieben habe? Habt ihr auch mal eure Vorschläge ausprobiert? Ich versuche hier zu helfen, in diesem Fall mal wieder mit einem konkreten Beispiel, wie wäre mit konkreten Vorschlagen/Erweiterungen/Verbesserungen und eigenen Tests.

Wenn man das so ließt, meint ihr wohl, ich bin da der totale Volldepp. (Eben nicht! ich bin der, der es ausprobiert hat!)

Und da ihr ja alle so schlau seit, werde ich jetzt nichts mehr zum Thema sagen.
  Mit Zitat antworten Zitat