对recordset操作过后有没有对其refresh过啊?如果是对修改过的表访问的话应该再次查询。如果是控件,应该改变其datasource属性,再refresh一下!

解决方案 »

  1.   

    我坚决反对用ADO控件,尽量用ADO对象,不然会有许多你想不到的错误出现
      

  2.   

    insert以后recordset更新(Refresh)一下,应该没问题
      

  3.   

    之所以会有这样的情况,我想是你对数据库操作中没有很好的关闭或打开数据库,你在你的上一步和下一步前加上,这取决于你的INSERT操作后的动作!
      

  4.   

        出现这种问题的原因是你引用的记录集是基于两个表的一个查询,当其中一个表中增加了数据或数据有所更新时,记录集在不被刷新的情况下是不能锁定相关表中的记录的,这时,在记录集中移动指针,则会出现上述错误。
        如果使用的是ADO数据绑定,则要在执行了INSERT语句后执行 Adodc1.Refresh ;如果使用的是ADODB对象操作,应在INSERT语句后执行 rs.Requery(此处rs是一个记录集)。这样做之后,再按上一条或下一条应该没有问题了。