Moin, moin, lasst uns das Ding mal sortieren:
a: DBGrid mit
Query und
SQL-Abfrage
----------------------------------------------------------------------------------------
Hier geht prinzipbedingt nur die Sortierung über ORDER BY ernsthaft korrekt.
-Hintergrund -
liegt darin, dass der DataSet nicht alle Datensätze einliest. Wenn man im DBGrid bei
größeren Datenmengen scrollt, dann wird nachgeladen. Wenn ich nur den DataSet mit
aktuellem Inhalt sortiere, dann gibt es beim Scrollen Durcheinander, da unosrtierte
Records kommen. Wie "alzaimar" schon angemerkt hat, sollte man in dieser Variante Indexnamen
möglichst nicht im DataSet (
Query/DBGrid) angeben, sonst geht das erst recht schief.
----------------------------------------------------------------------------------------
a: DBGrid mit TTable und Indexfeld
----------------------------------------------------------------------------------------
Hier geht prinzipbedingt die Sortierung über das Indexfeld der TTable korrekt.
-Hintergrund -
Auch hier lädt der DataSet Datensätze bei Bedarf (bei Scrollen) nach. Die Sortierung
erfolgt dann über die Angabe in der TTable. Ist die gleich mit der Datenbanksortierung
wird die Datenmenge einfach zum DBGrid durchgereicht. Ansonsten wird sie intern umsortiert,
was sich übrigens in temporären Dateien bemerkbar macht.
----------------------------------------------------------------------------------------
Grüße in die Runde // Martin