cancelbatch出错!急急急!(100分)

  • 主题发起人 主题发起人 hawkykh
  • 开始时间 开始时间
H

hawkykh

Unregistered / Unconfirmed
GUEST, unregistred user!
我在使用ado的batchupdate模式时,在添加多条记录后,用cancelbatch取消添加出错,提示说:
行句柄引用一个已被删除的行或被标识未被删除的行!请各位大虾指教!!!
 
>>已被删除的行或被标识未被删除的行
具体的代码请贴出来。大概未添加成功的缘故;
 
代码很简单,我是在dbgrid上修改记录的。
procedure Tform1.buttonaddClick(Sender: TObject);
begin
tqwxjj.Append;
end;

procedure Tform1.buttonmovClick(Sender: TObject);
begin
tqwxjj.edit;
end;

procedure Tform1.buttonsaveClick(Sender: TObject);
begin
tqwxjj.UpdateBatch;
end;

procedure Tform1.buttoncancelClick(Sender: TObject);
begin
tqwxjj.CancelBatch;
end;
多谢
 
更新包装了没有呀?
 
怎么更新?请指教?谢谢
 
本人已解决!请版主停止次问题!
 
DELPHI的一个BUG,参考
http://web.orbitel.bg/vassil/BUGS.htm#BUG_TCustomADODataSet_CancelBatch
解决方法1.CancelBatch前定位到第一条记录
2.使用TBetterADODataSet
3.修改ADODB.PAS程序,在CancelBatch里加个判断,具体参考上面站点
 
谢谢pclover,我是第一次来这里,我已经给你加了积分,不知道有没有收到,如没有,请联系我!
再次谢谢。
 
我是用reqery来代替cancelbatch,我试了你的方法1.CancelBatch前定位到第一条记录,如果
原先没有记录,也会出错,只要定位在一条原有的记录上就可以了。
 
多人接受答案了。
 
后退
顶部