一个DBGRID显示一些数据,其中打开的是STATUS字段为1的数据,相对的ADOQUERY为批处理模式。
我按一个按纽,把DBGRID中数据的当前行的STATUS字段值EDIT成0,然后通过FILTER过滤,然刚才这条不要显示。然后ADOQUERY.UPDATEBATCH(ARLL);
但是数据库中,查到那个标志还是1。奇怪

解决方案 »

  1.   

    然后我把FILTER过程去掉,就可以了
      

  2.   

    FILTER到底是怎么一回事
      

  3.   

    俺也才遇见过这个问题。搞的我没办法,干脆用一个TClientDataSet来做。关注
      

  4.   

    with adoquery1 do
    begin
      post;
      updatebatch;
    end;
      

  5.   

    qizhanfeng(glacier)???这么写有道理吗?
      

  6.   

    这个问题应该是你的原因吧
    不丛技术角度上讲,分析一下吧,你过滤的是值为1的数据,而这个数据可以再改成0吗?那FILTER如果起作用的话,肯定不允许你这样做,感觉那样绝对是无效的
    我也没试过
    感觉是这个原因
      

  7.   

    一群人就知道乱说。有本事说出理由啊。我自己解决了。FILTER:=FALSE;
    ADOQUERY.UPDATEBATCH(ARLL)
    FILTER:=TRUE;
      

  8.   

    >>主  题:  Borland问题,还是我的问题?  
    >>作  者:  zhouxiaochenchina ()  一看到这样的标题,就知道是个又懒又不学无术的家伙,动不动就懒是人家Borland的问题,你长个脑袋干什么吃的???
      

  9.   

    borland的问题也不少,我的Delphi经常会出些莫名其妙的问题,有时候写啊写的突然就弹出rtl包错误。不过也许是D版的问题:)