Du solltest mal über die Reihenfolge deiner Befehle nachdenken:
Du öffnest die
SQL-Abfrage (= führst sie aus), bevor du überhaupt den
SQL-Befehl festgelegt hast. Und der Variable "fach" weist du einen Wert zu, den sie ebenfalls erst haben kann, nachdem du die
SQL-Abfrage ausgeführt hast.
Um ggf. ein Missverständnis zu vermeiden: Die Variable "fach" ist kein Zeiger oder sowas auf dein Ergebnis aus der Datenbank, sondern es wird der Wert aus der Datenbank dahin kopiert.
Bis denn
Bommel