用edit方法修改记录时出错(access数据库),提示:couldn't perform the edit beacause another user changed the record   奇怪的是有部分记录是正常的,不知数据库出了什么问题,通过access检查数据库正常,请大侠指教。

解决方案 »

  1.   

    语句如下:
              da.ww.Edit ;
             da.ww.FieldByName('l9').asVariant :='0';
             da.ww.Post ;
      

  2.   

    你试下这样吧:da.ww.refresh;
    da.ww.edit;
    da.ww['l9']:='0';
    da.ww.post;
    这样就OK了。
      

  3.   

    我为了排除‘access上还有其它用户在操作’的疑问,专门编制测试程序,只有一个窗口,一个表,绝无其他用户,结果发现,问题依旧,有收获,就是查处一个记录,如果把这个记录删除就ok,可是这个记录在access上修改自如,不知为何????????????
      

  4.   

    在access中这样操作,重新建一个表,结构和当前的这个 一样,然后吧数据全部复制过来,删除旧表,当前表改名,然后再重新操作试试。 ==!
      

  5.   

    可能是表中使用的自增长ID作主键
    而你POST之后没有更新,所以DataSet不知道这个ID是多少
    所以更新出错
    可以试一下以下方法
    da.ww.Refresh;//刷新一下以获得ID
    da.ww.Edit; 
    da.ww.FieldByName('l9').Value:='0';
    da.ww.Post;