Entwickler-Ecke
Datenbanken - DBGrid sortieren
fcg - Sa 09.11.02 10:42
Titel: DBGrid sortieren
halöle,
ich hoffe ihr könnt mir hierbek helfen. ich möchte ein DBGrid (oder gleich die table, db, paradox7) sortieren, wie man das im windows explorer auch machen kann. leider habe ich davon keine ahnung. wie kann i sowas machen?
<thanks>
LCS - Sa 09.11.02 12:34
Hi
du kannst das DBGrid selbst überhaupt nicht sortieren. Das einzige was du sortieren kannst, sind die Daten deiner Tabelle.
Wenn du über eine TTable Komponente zugreifst, kannst du die Sortierung durch die Verwendung eines anderen Index ändern. Diesen Sekundärindex musst du allerdings vorher für deine Tabelle erstellt haben (mit der Datenbankoberfläche).
Flexibler wird das Ganze wenn du anstelle von TTable eine TQuery zum Anzeigen der Daten verwendest. Dort werden die Daten auf der Basis eines SQL-Statements bereitgestellt und da kannst du nach jedem beliebigen Feld sortieren. Etwa so:
Quelltext
1:
| SELECT * from MeineTabelle ORDER BY MeinTabellenfeld |
Allerdings hast du bei TQuery dafür an einigen anderen Stellen Einschränkungen. So können die Daten i. d. R. nur dann geändert werden, wenn keine Sortierung oder Sortierung nach dem Primärindex angewendet wird.
Gruss Lothar
fcg - Sa 16.11.02 19:59
ich bin noch ein totaler anfänger in sachen datenbank. (ich arbeite mit table komponenten) kannst du vielleicht mal ein beispiel posten?
<thanks>
LCS - Mo 18.11.02 12:10
Hi
nimm doch einfach mal eine Tabelle, öffne sie mit der Datebankoberfläche und erstelle ein oder zwei zusätzliche Sekundärindizes. Wenn du eine Adresstabelle hast, würde sich ein Index für Name und einer für Wohnort anbieten.
Dann stellst du die Tabelle in einem DBGrid dar und schaust was passiert, wenn du die Eigenschaft IndexName der Tabelle änderst. Die Sortierung der Tabelle ändert sich. Der nächste Schritt wäre dann, das Programmgesteuert zu machen.
Probiers einfach mal aus. Das ist nicht schwer zu durchschauen. Passendes Beispiel dazu hab ich leider grad keines da.
Gruss Lothar
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!