我对同一条记录用了两次EDIT方法编辑完数据后,为什么保存时出现这样的错误信息:
ROW-0014 当数据库中的数据已经更改时,不能更新行???第一次EDIT后保存数据没有出错,第二次用EDIT的时候再保存就出错了,。。

解决方案 »

  1.   

    我用了ADOQUERY.EDIT后,编辑完数据后用ADOQUERY.POST保存数据;
      

  2.   

    我用了ADOQUERY.EDIT后,编辑完数据后用ADOQUERY.POST保存数据;
    ``````````````````````````````````````````````````````````
    对你所说不明.怎么两次EDIT,是否是EDIT一次后POST,然后再EDIT?
      

  3.   

    edit之前先判断一下嘛`~
    if not (ADOQuery1.State in [dsinsert,dsedit]) then ADOQuery1.edit;
      

  4.   

    嗯,这个,你是EDIT、POST之后再EDIT的,还是EDIT,EDIT,POST,POST的,如果是第二种,肯定不行,有时候,由于数据未刷新的原因,也会造成所上的错误
      

  5.   

    想起来了,是因为数据未刷新,你应该在POST之后重新取回数据然后再EDIT
      

  6.   

    是EDIT后,POST一次,然后再EDIT一次,然后POST的时候就出错了。
      

  7.   

    最好在每次edit和post前,进行判断.例如:
    with adoquery do if state=dsBrowse then Edit;
    ...
    with adoquery do if state in [dsEdit,dsInsert] then Post;