首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

如何停止commit

2012-02-05 
怎么停止commitif dw_1.udpate()1 thencommitelserollbackend if如果dw_1的数据量很大,commit会有很长

怎么停止commit
if dw_1.udpate()=1 then
  commit;
else
  rollback;
end if
如果dw_1的数据量很大,commit会有很长时间的等待,我想实现用户可以控制停止commit有什么办法没?

[解决办法]
.....
分批操作

比如10000 条数据,
你100条commit一次,不就好了

但是不能用update()
你自己手动的update or insert
这个都可以通过row的state来确定的
[解决办法]
不能。commit时间很短的,倒是update时间较长。分批循环update,不行就回滚。不过这样对数据窗口的控制会麻烦些。
[解决办法]
研究了一个上午,终于找到了

在datawindow的sqlpreview事件上可以做,代码:
yield()
if ib_stopcommit then return 1 //ib_stopcommit实例变量

再加一个按钮写上
ib_stopcommit=ture

再加上dberror事件
return 1

大功已告成

探讨
if dw_1.udpate()=1 then
  commit;
else
  rollback;
end if
如果dw_1的数据量很大,commit会有很长时间的等待,我想实现用户可以控制停止commit有什么办法没?

热点排行