Da ich über eine andere Delphiversion als Du verfüge, gelingt es mir nicht, den Fehler irgendwie nachzustellen.
Bitte nimm die Connection und die
Query aus dem ButtonEreignis heraus und erstelle sie als Komponenten auf dem Formular (und nicht erst zur Laufzeit).
Dann befülle die Attribute im Objektinspektor und stelle sowohl die Verbindung zur Datenbank her, als auch zur Abfrage (also das Attribut Connected der TSQLConnection im Objektinspektor auf True und das Attribut Active der TSQLQuery auf True setzen).
Wenn das dann gelingt, kannst Du in der
DFM des Projektes nachsehen, welche Attribute der beiden Komponenten wie gesetzt sind und das dann im Quelltext nachstellen.
Für mich ist allerdings fraglich, warum die beiden Komponenten als lokale Variabeln im Buttonereignis erstellt werden und dort dann weder die Abfrage geschlossen wird, noch die Verbindung wieder getrennt wird und auch keine Freigabe der Variabeln erfolgt.
Das Argument: Das ist nur zum Testen, lasse ich nicht gelten. Auch beim Testen sollte man den Quelltext korrekt und vollständig erstellen, da ansonsten ungeahnte Seiteneffekte nicht auszuschließen sind.