Kannst Du mit [F7] in das "FieldByName" bzw das "AsString" hineinschauen?
Das paßt jetzt nur halb zum Thema, aber Du kannst jedenfalls die Geschwindigkeit erhöhen, wenn "FieldByName" nicht jedesmal ausgeführt werden muß:
Vorschlag:
Delphi-Quellcode:
const
S_FELDNAME = 'Feldname';
S_SEPARATOR = ',';
var
lfldFeldName: TField;
s : string;
begin
if (not Assigned(DataSet)) then exit;
if (not DataSet.Active) then
begin
DataSet.Open;
end;
lfldFeldName := DataSet.FindField(S_FELDNAME);
if Assigned(lfldFeldName) then
begin
s := EmptyStr;
DataSet.First;
while (not DataSet.Eof) do
begin
s := s + S_SEPARATOR + lfldFeldName.AsString;
DataSet.Next;
end;
end;
end;