Einzelnen Beitrag anzeigen

Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.381 Beiträge
 
Delphi 10.4 Sydney
 
#1

durch Tabelle navigieren langsam (.Next)

  Alt 27. Jan 2012, 12:11
Datenbank: Firebird • Version: 2.1 • Zugriff über: IBObjects
Hi,

großes Projekt mit Delphi 7 und IBObjects, die Kundeninstallationen sind teilweis Embedded Server, teilweise "richtige" FBServer im Netz.

Bei manchen Kunden (bzw. bei diesen bei manchen PCs) gibt es das Problem, dass ein

Delphi-Quellcode:
  Query.First;
  while NOT Query.EOF do
    Query.Next;
  end;
seeeehr lange dauert (grob geschätzt pro Datensatz 1/4 Sekunde). Bei mir am Rechner (und den meisten anderen Rechnern) rast die gesamte Datenmenge der Query (ca. 500 Datensätze) in der Zeit durch. (hier extra der Hinweis: An dem Beispielcode ist NICHTS weggelassen - es wird nur ein Next; ausgeführt! Kein Event keine sonstigen Aktionen).

Was ich ausschließen kann:
1. Netzwerkprobleme: Da das Verhalten teilweise auch bei Embedded-Installationen auftritt
2. Anzeige der Datensätze: Auch wenn ich das an der QUery hängende DBGrid abhänge, gibts kaum einen Geschwindigkeitsvorteil, das Next dauert immer noch verdammt lange
3. generelle PC-Probleme / Installationsprobleme Firebird: Wenn ich das Beispiel oben mit den UIB nachbaue, gibts keinen Geschwindigkeitsunterschied, das Beispiel ist auf allen Rechnern gleich schnell.
3.1 Systemressourcen: In einem Netz mit unterschiedlichen PC-Konfigurationen (BS immer WIn 7 64 Bit) ist ein Client schnell, 4 Clients langsam. Der Schnelle Client hat dabei lediglich 2GByte Hauptspeicher...
4. irgend welche Abhängigkeiten der Query: TestApp mit eigener TIB_Database, Transaction, QUery mit dem COde oben, dauert wieder verdammt lange

Hat irgend jemand ne Idee was ich noch anstellen / ausschließen / eingrenzen kann?
  Mit Zitat antworten Zitat