nightcrawler hat geschrieben:...
Darf ich fragen, welche Absicht hinter dieser Frage steckt? In der SQL-Welt ist eine aktive Index-Ordnung nicht relevant.
Hallo Joachim,
danke für die schnelle Reaktion.
Es ist so: zu der Tabelle im SQL Statement gibt es mehrere Indizes. In einem allgemeinen Teil des Programms stellt der Programmcode automatisch fest, dass es einen Index über eine bestimmte Id gibt. Dann wird dieser Index benutzt, um einen Seek-Befehl auszuführen. Das geht auch genial schnell ...
Den Programmteil habe ich (wie immer) so programmiert, dass der vorherige aktive Index gemerkt und anschließend wieder gesetzt wird.
Nun handelt es sich in diesem Fall ja um ein SQL Statement mit "Order By"-Klausel. Das heißt, nach dem Erzeugen des Statements gibt es gemäß DLL-Aufrufen keinen aktiven Index (was ich eigentlich auch logisch finde). Also setze ich in diesem Fall anschließend den aktiven Index wieder zurück auf "kein Index aktiv".
Unglücklicherweise ist anschließend die Tabelle nach der physikalischen Reihenfolge sortiert. Einerseits logisch, andererseits wiederum nicht, da so die "Order By"-Klausel ignoriert wird
.
Hoffentlich war das verständlich.
Wenn ich die Dokumentation über die DELPHI-Funktion nehme, müßte es eigentlich eine Lösung für mein Problem geben ...
Nur habe ich leider nicht den Quellcode zur DELPHI-Funktion, um sie in xBase++ nachzubilden
.
Uli