ADODS_PSlab_bl.CommandText :=
     'select *,rownum n  from xxx  '
     ADODS_PSlab_bl.Open;    ADODS_PSlab_bl.Recordset.MoveFirst;
    while (NOT ADODS_PSlab_bl.Recordset.EOF) do
     begin
       ShowMessage(ADODS_PSlab_bl.Fields[0].AsString);
       if (strtoint(ADODS_PSlab_bl.Fields[6].AsString) mod 8 )= 0 then
        begin
        ADODS_PSlab_bl.Edit;
        ADODS_PSlab_bl.Fields[0].Value := 'just test'; // 提示:缺少用于刷新或更新的基本表信息
        ADODS_PSlab_bl.Post;
        end;
       ADODS_PSlab_bl.Next;     end;

解决方案 »

  1.   

    我只想改变ADODS_PSlab_bl里的值,不想改变xxx 表中的值
      

  2.   

    ADOQuery1.LockType := ltBatchOptimistic;
      

  3.   

    弱弱的请楼上朋友看清,ADO 组件里除了TADODataSet、TADOCommand两组件带CommandText属性外,其余的(包括TADOQuery)是没CommandText属性的,所以,楼主用的控件,肯定不是TADOQuery组件。“提示:缺少用于刷新或更新的基本表信息”
    估计是缺少主键。楼上朋友提的方法倒是对的:ADODS_PSlab_bl.LockType := ltBatchOptimistic;