Einzelnen Beitrag anzeigen

norwegen60

Registriert seit: 23. Dez 2007
Ort: Schwarzwald
504 Beiträge
 
Delphi 12 Athens
 
#6

AW: Query in thread ausführev: Wie Ergebnis zurück geben

  Alt 3. Jun 2015, 09:25
Hallo zusammen,

danke für die Inputs. Bei den Daten handelt es sich um ca 1.2 Mio Datensätze. Das SQL sieht so aus:

SELECT ID, SerNr, Typ, Dat
FROM Ser_Nr
WHERE &ServOrt
ORDER BY SerNr, Dat

und stellt Daten für eine LookUp bereit. Das funktioniert auch, nur dass der Anwender je nach Arbeitsplatz 20-30s warten muss bis die Anwendung gestartet ist (Bei mir lokal dauert es ca. 3s). Und wenn das Laden der Daten in den Hintergrund verlegt werden kann, wäre das super. Ich habe auch schon mit dem Parameter Fetchall rum probiert. Dann wird das Starten zwar schneller, dafür wartet der Anwender aber beim Eingeben, da die Restdaten dann dort geladen werden.

Mit Virtualtable hatte ich bisher nicht gearbeitet, aber die Idee ist gut. Dann könnte ich auch hin und wieder im Hintergrund nachfragen ob auf dem Server neue Daten dazu gekommen sind und diese anfügen. Denn bei einem Refresh wartet der Anwender im Moment halt wieder.

Etwas erstaunt war ich als ich bei mir die Daten zuerst per
  • UniQuery geöffnet habe (ca. 3s)
  • und dann an über VirtualTable1.Assign(UniQuery) zugeordnet habe, was 18s dauerte

Ich habe leider keinen direkten Zugriff auf die langsamen Arbeitsplätze bei meinem Kunden, werde aber bei Gelegenheit schauen wie sich die Zeiten dort verhalten.

Gibt es einen schnelleren Weg von der DB in die VirtualTable?

Grüße
Gerd
:
  Mit Zitat antworten Zitat