Thema: Delphi SQL-Abfrage zu langsam

Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#2

AW: SQL-Abfrage zu langsam

  Alt 8. Sep 2015, 11:56
Mit between?
Code:
select dx,dy where (rw between x - 1000 and x + 1000) and (hw between y - 1000 and y + 1000)
mit Parametern?
Code:
select dx,dy where (rw between :x1 and :x2) and (hw between :y1 and :y2)
Delphi-Quellcode:
qry.ParamByName('x1').Value := x - 1000;
qry.ParamByName('x2').Value := x + 1000;
qry.ParamByName('y1').Value := y - 1000;
qry.ParamByName('y2').Value := y + 1000;
Um welche Datenmenge handelt es sich?

Index auf rw und hw vorhanden?

Statt TADODataSet mit TADOQuery arbeiten?

Liegt die DB lokal auf dem Rechner oder im Netz?

Mal mit den Werten von CursorLocation -> clUseServer / clUseClient spielen.

Ebenso mit CursorType.

Je nach Einstellung wird die gesamte Datenmenge erstmal zum Client "geschaufelt", was bei großen Datenmengen schon 'ne Weile dauern kann.
  Mit Zitat antworten Zitat