Du kannst Delphi &
SQL nicht vermischen.
Deine Abfrage wird von der
DB verarbeitet, die hat aber keine Ahnung von den Objekten in deinem Delphi-Code.
Vielleicht solltest du dich
hier mal ein wenig über
SQL schlau machen.
Zur Frage:
In der SELECT- & in der WHERE-Clause einer Abfrage kannst du nur Spaltennamen der Tabellen verwenden, die nach FROM stehen.
z.Bsp.:
SQL-Code:
SELECT Feld1
FROM Tabelle
WHERE Feld2 = 1
(@all Ich weiß, das man auch noch Funktionen ,... benutzten kann, die Erklärung würde jetzt einfach zu weit gehen)
Diese Tabellen müssen in der Datenbank existieren (deshalb kannst du dort kein Delphi-Objekt à la "FormVocsEng.TableEng" angeben).
Da du jetzt auf TQuery umgestiegen bist versuch' es doch mal so:
Delphi-Quellcode:
With Query Do
Begin
Active := False;
SQL.Text :=
'
SELECT *' + #10 +
'
FROM Tabelle' + #10 +
'
LIMIT ' + IntToStr(ZufallsZahl) + '
, 1';
Open;
End;
Ersetze Tabelle jetzt noch mit dem Tabellenname in deiner
DB und du hast deine Abfrage.