Query1.First;
While not Query1.Eof do
begin
     Str:='';
     For i:=0 to Query1.Fields.Count-1 do
     begin
          Str:=Str+Query1.Fields.Fields[i].DisplayName+' '+Query1.Fields.Fields[i].AsString;
     end;
     Memo1.Lines.Add(Str);
     Query1.Next;
end;

解决方案 »

  1.   

    我上面的程序吧每一行记录都加到memo的一行中去。每个字段都加进去了!
    包括它的名称,(也可用query1.Fields.Fields[i].FielsName),和它的值
      

  2.   

    好象要将str:=''放在循环中每一句吧
    For i:=0 to Query1.Fields.Count-1 do
        begin
              str:='';//第次将str清空
              Str:=Str+Query1.Fields.Fields[i].DisplayName+' '+Query1.Fields.Fields[i].AsString;
        end;
        Memo1.Lines.Add(Str);
        Query1.Next;
      

  3.   

    同意ch81(missile)
    不过最好再加一句
    For i:=0 to Query1.Fields.Count-1 do
        begin
              Str:=Str+Query1.Fields.Fields[i].DisplayName+' '+Query1.Fields.Fields[i].AsString;
        end;
    str=str+chr(13);  //换行    
    Memo1.Lines.Add(Str);
        Query1.Next;
     
      

  4.   

    willsound(威风) 
    怎么能加在循环里??
    memo1.lines.还没add呢
      

  5.   

    query1.First ;
    fn1:='';
    l:=25;
    for i:=0 to query1.FieldCount -1 do
    begin
      k:=length(query1.Fields[i].FieldName );
      fn1:=fn1+query1.Fields[i].FieldName;
      for h:=0 to l-k-1 do
        fn1:=fn1+' ';
    end;
    memo1.Lines.Add(fn1);for i:=0 to query1.RecordCount-1 do
    begin
      fn2:='';
      for j:=0 to query1.FieldCount-1 do
      begin
        k:=length(query1.Fields [j].AsString) ;
        begin
        fn2:=fn2+query1.Fields[j].AsString;
        for h:=0 to l-k-1 do
          fn2:=fn2+' ';
        end
      end;
      memo1.Lines.Add(fn2);
      query1.Next ;
    end;