这是上次的问题
“这个错误是随机的,不是每次都有.
我用一个DBGrid显示一个ADOTable的内容,并且在其中进行增删改.有一个保存按钮,里是ADOTable.UpdateBatch()
但有时就会提示一些数据在更新时改变.
我查了UpdateBatch的说明,Cursor类型之类的也是按要求的.为什么会出这样的错误?怎样才能处理或者避免?”
后来设adoConnectin的IsoLationLevel为ilRepeatableRead,问题仍然存在。而且我还加了主键
现在有了进一步的发展。发现:
1、这个问题一般出现在三次ADOTable.UpdateBatch()之后,我输入,UpdateBatch,再输入UpdateBatch,再输入,UpdateBatch,出错。
2、如果我这样
ADOTable.UpdateBatch()
ADOTable.Close()
ADOTable.Open()
ADOTable.Last()
连续测试了二个小时,没问题,也可能只是把问题压后了。把主键去掉,还是没问题
请大家帮我看看。这到底是怎么回事?

解决方案 »

  1.   

    1.如果是网络上使用,检查是否是网络滞留原因;2.如果不是,可能就是你的数据刷新不够快,你试试在每次ADOTable.UpdateBatch()之后,把表关闭再打开.
      

  2.   

    你这样试一试
    先修改一个DBGrid中一行数据
    不UpdateBatch
    在修改另一行数据
    不UpdateBatch
    在回来修改第一行
    再UpdateBatch
    看有不有问题产生
      

  3.   

    在回来修改第一行 是第一次修改的行,没有UpdateBatch
      

  4.   

    应ADOTable.UpdateBatch();
    ADOTable.refresh;