是 Ds.Recordset.MoveNext;//

解决方案 »

  1.   

    VAR
     DSA:tADOTABLE;
     DS:tADODATASET;
     BEGIN
       Ds.CommandText:='select * from Meter_B order by xh';
       Ds.Open;
      DSA.DataSetField.DataSet:=DS;
       While Not DSA.Eof do
       Begin
         ...
         ...
        DSA.MoveNext();//问为什么纪录不移动?
       End;
      

  2.   

    VAR
     DSA:tADOTABLE;
     DS:tADODATASET;
     BEGIN
       Ds.CommandText:='select * from Meter_B order by xh';
       Ds.Open;
      DSA.DataSetField.DataSet:=DS;
       While Not DSA.Eof do
       Begin
      ...
        DSA.MoveNext();//问为什么纪录不移动?
       End;//运行时提示Dsa未初始化
      

  3.   

    问题已解决
       在Delphi5.0中编辑环境中ds.next无法直接列出next方法,而在帮助中得到next方法,直接输入ds.next耗用
      

  4.   

    设一下
     DSA,DS的Connection 
     另外你的感知空件(eg:TDBGrid)通过TDataSource关连到DSA,DS吗?
    还有你的DSA,DS是不是动态创建的,加上
    DSA:=TADOTable.Create(Self);
    DS:=TADODataSet.Creat(Self);
    如果是连到感知空件就不要Free DS,DSA了