Ändert sich was, wenn du im zweiten Code ein "DataModul.SQLQuery.Last" einfügst? Vermutlich wird hier kein FetchAll ausgeführt (unter der Annahme, dass die
SQL und die Datenbank jeweils die selbe ist)
Wenn ich das so einbaue, wie von dir beschrieben, geht es auch. Warum muss ich dann aber erst
Last setzen?
Delphi-Quellcode:
begin
Result := 0;
SqlState := Format('SELECT %s FROM %s;', [feldKANummer, TableNameKANummer]);
DataModul.SQLQuery.SQL.Text := SqlState;
try
DataModul.SQLQuery.Open();
DataModul.SQLQuery.Last;
result := DataModul.SQLQuery.RecordCount;
finally
DataModul.SQLQuery.Close;
end;
end;