Moin zusammen,
Ich hatte mir mal vor einiger Zeit eine Pagination-Komponente zusammengebastelt, um
eine relativ große Tabelle zu stückeln.
Um jetzt die ganzen Problematiken die hier im Thread angesprochen wurden, zu vermeiden
habe ich das ganze damals in etwa so gelöst(ich hab' mich mal auf's wesentliche beschränkt
und hoffentlich nichts vergessen
):
Delphi-Quellcode:
//Die ersten 100
FLimitStartValue:=0;
FLimitRange:=100;
SQL := FORMAT('
SELECT * FROM table ORDER BY 1,2,3 LIMIT %d,%d',[FLimitStartValue,FLimitRange]);
//Die nächsten
FLimitStartValue := FLimitStartValue + FLimitRange
SQL := FORMAT('
SELECT * FROM table ORDER BY 1,2,3 LIMIT %d,%d',[FLimitStartValue,FLimitRange]);
In meinen DBGrids ist es so, dass die User die Sortierreihenfolge selbst wählen können und mit dieser Lösung
kann es mir egal sein wie diese aussieht.