Ich schätze, Dein erster Gedanke war nicht schlecht: Thread-Programmierung. So kannst Du den Thread mit der Abfrage über einen zweiten Thread "killen". Das Problem ist nur folgendes: Sobald Du TADOQuery.Select mit Open abgesetzt hast, musst Du irgendeinen Zugang zum Server finden, denn dort wird Dein Statement abgearbeitet.
Der von Dir eingesetzte Server sollte also irgenwie von sich aus eine Möglichkeit bieten eine Select-Abfrage abzubrechen, ansonsten sieht's düster aus.
Wenn Du mit einer lokalen
DB arbeitest, könntest könntest Du einfach den Lokalen Abfrage-Thread "killen", notfalls über einen eigenen Button ausgelöst.
"Wer seinem Computer Mist erzählt, muss immer damit rechnen..." (unbekannt)
"Der Computer rechnet damit, dass der Mensch denkt..." (auch unbekannt)
mein blog