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

关于同时更新多个数据表,该如何处理

2012-03-11 
关于同时更新多个数据表if dw_2.update() 1 thencommit using sqlcaupdate a set sl 5 where dm

关于同时更新多个数据表
if dw_2.update() = 1 then
commit using sqlca;
update a set sl = '5' where dm = :ls_dm;
messagebox('提示','数据保存成功!')
else
rollback using sqlca;
messagebox('提示','数据保存失败!')
end if

如果当程序执行到 commit using sqlca;
出现其他情况没有执行 update a set sl = '5' where dm = :ls_dm;

怎么才能够做到让数据保持一致呢?

[解决办法]

探讨
if dw_2.update() = 1 then
commit using sqlca;
update a set sl = '5' where dm = :ls_dm;
messagebox('提示','数据保存成功!')
else
rollback using sqlca;
messagebox('提示','数据保存失败!')
end if

如果当程序执行到 commit……

[解决办法]
探讨
是不是update后没有 commit using sqlca;
也不会更新数据?

[解决办法]
探讨
是不是update后没有 commit using sqlca;
也不会更新数据?

[解决办法]
if dw_2.update() <> 1 then
rollback using sqlca;
messagebox('提示','数据保存失败!')
return
end if

update a set sl = '5' where dm = :ls_dm;

if sqlca.sqlcode = -1 then
rollback using sqlca;
messagebox('提示','数据保存失败!')
return
end if

commit using sqlca;
messagebox('提示','数据保存成功!')




[解决办法]
如果你的数据库支持触发器的话,最好用触发器来实现。这样可以少搞些PB代码的判断。

热点排行