请问在多表更新时,用dw_1.update() 和dw_1.update(true,false)的区别?

FSB 2004-06-26 11:08:41
请问在多表更新时,用dw_1.update() 和dw_1.update(true,false)的区别?
...全文
427 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
computer0408 2004-06-29
  • 打赏
  • 举报
回复
chucjjing 2004-06-28
  • 打赏
  • 举报
回复
学了点新知识!谢谢
swordmanli 2004-06-28
  • 打赏
  • 举报
回复
打一个简单的比方吧
dw_1.update() 只管自己,自己更新成功了,就把自己的status改掉了
dw_1.update(true,false)自己更新成功了,但是还不敢改掉自己的状态,要等等看大家是否都更新成功了,如果都更新成功了再通过resetUpdate()来改变自己的状态。


dw_1.update()相当于dw_1.update(true,false)后立马调用dw_1.resetUpdate()

Tomtop 2004-06-28
  • 打赏
  • 举报
回复
sbks(hwnd,&rect)说得对!
jiangjildy 2004-06-27
  • 打赏
  • 举报
回复
你看一看帮助文档里的update函数,既有说明又有例子,全面得很,没有必要在网上求助,
给你个全面的回答也太废时间了。
zhouweiwansui 2004-06-27
  • 打赏
  • 举报
回复
补充楼上的:重置更新标志的意思是将所有行设置为NotModified!,及已经更新。
如果不设置这个标志,那么你重复点两下update按钮的时候就会再次生成相同的sql语法。
TGWall 2004-06-27
  • 打赏
  • 举报
回复
Update的函数格式: dwcontrol.update([accept[,resetflag]])
参数描述: accept---为true时(缺省值)在执行之前调用accepttext()函数; resetflag--为true时(缺省值)数据窗口更新后自动重置更新标志.


由上得知dw_1.update()相当于dw_1.update(true,true), 这时你应当知道dw_1.update() 和dw_1.update(true,false)的区别了吧?
sbks 2004-06-27
  • 打赏
  • 举报
回复
呵,看起来我有点描述不太清楚。建议楼主找一个关于数据窗口的原理的资料来读一下,就会明白了,我当年也是这样嘀
sbks 2004-06-27
  • 打赏
  • 举报
回复
update():相当于update(true,true),第二个参数是说让数据窗口自动管理状态标志,如果在多表提交中,万一update()成功,但最终commit不成功,那么你就无法再重新获得状态标志了,因为它们被自动管理,此时,数据窗口是没有办法再帮你重新生成你所想要的SQL语句

update(true,false):第一个参数是设置是否自动accepttext,这与多表提交无关,就不说了。而第二个参数设为false,那么你自己管理状态标志(使用resetflag()来重设标志)。这样,当你commit不成功时,在数据窗口中修改正确数据,再update(),数据窗口会重新生成sql语句给你提交。

610

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧