ADOQuery1相关属性
LockType := ltBatchOptimistic;
CursorType:=ctStatic;对这样一个已经打开的ADO,我不断的delete,直到recordcount=0,再调用CancelBatch函数就出错了,提示bof或者eof出错,怎办?

解决方案 »

  1.   

    你用的是Delphi 5吗?这是一个bug,去下补丁吧!
      

  2.   

    while not dataset.eof do begin
    //do
    end
    不要用recordcount
      

  3.   

    我这怎么就不会呀
    ADOQUery1.CancelBatch(arAll);
      

  4.   

    我说的recordcount=0并不是真正去判断了,只是说明我的整个数据集已经空了,但是这个时候Active仍然为true。补丁?哪儿有下?
      

  5.   

    我也碰到过这问题
    if not (ADOQuery.IsEmpty) then ADOQuery.Delete
      

  6.   

    还是别用ado,他妈的,微软的东西就是差劲,bug一大队,不过,易用性倒是不错,但是,ado好像也不必bde用的容易,因为两个都是很容易