数据库:SQLServer2000
控件:AdoDataSet+DataSetProvider+ClientDataset
有时新增加一条数据,applyupdate(0).然后在删除该记录,applyupdate(0).后出现如下错误提示:record not found or change by another user.
不知道大虾们有没有遇到该种情况?该如何解决呢?

解决方案 »

  1.   

    你的删除语句是不是DELETE FROM TABLE 这样的语句,是不是从客户端的ClientDataSet上提交上去的?我用过一次发现根本不用再去applyUpdate就已经更改了数据库数据,查看一下数据库看看是不是这样?
      

  2.   

    很简单,把datasetprovide连接的表单的某个字段属性设置为pikey,然后改变updatemodule为keyonly即可。如果还没有解决,可以直接给我发消息。
      

  3.   

    我曾经遇到一种情况。某些数据不但在删除的时候出错,修改的时候也错,后来跟进VCL,发现定位记录的时候用LOCATE,然后在服务器的ADOTABLE中的FILTER只能255个字节,超出的就截断了,很奇怪的问题。只能使用WhereKeyOnly了。