直接在sql里查询"select name,age from test",会有几十个结果sqldataset1.CommandText:='select name from test';  
num:=sqldataset1.Fields.Count ;   
用这种方法,num一直都是返回的1,有没有办法把获得的多个结果都取出来?结果是准备再放到string列表里的

解决方案 »

  1.   

    sqldataset1.Fields.Count 返回的是字段数,'select name from test'只是查询了一个字段,当然返回1了
      

  2.   

    http://topic.csdn.net/u/20080414/17/180a16ad-cdc0-4f01-952f-0d8b3c30ad8e.html
      

  3.   

    sqldataset1.RecordCount
    sqldataset1.FieldByName('').AsString
    sqldataset1.Next
      

  4.   

    楼主理解错了
    num:=sqldataset1.Fields.Count ; //返回sqldataset1字段的个数由你的SQL"select name from test"来决定的,这个SQL只有一列sqldataset1.CommandText:='select name from test';   
    sqldataset1.Open;
    //一行一行取数据 
    while not sqldataset1.Eof do
    begin
      ShowMessage(sqldataset1.FieldByName('name').AsString);
      sqldataset1.Next;
    end;