在我制作的软件中有个月结功能,在执行以后发现不对要执行回滚,如何实现对两个表操作后的事务处理,我用的是CONNECTION对象直接连库。谢
在我制作的软件中有个月结功能,在执行以后发现不对要执行回滚,如何实现对两个表操作后的事务处理,我用的是CONNECTION对象直接连库
谢谢在线等待!!!!
问题点数:0、回复次数:9Top
1 楼thisme2401(做人要厚道)回复于 2004-12-03 09:05:39 得分 0
如果是一个数据源下打开的记录集,用这个数据源就可以同时对所有的表进行提交与回滚。Top
2 楼libiyang(爱情抗体)回复于 2004-12-03 09:08:26 得分 0
on error goto ErrHdl
conn.beginTrans
conn.execute sql
conn.commitTrans
ErrHdl:
conn.rollbackTransTop
3 楼ezlj(我啊)回复于 2004-12-03 09:08:55 得分 0
不大明白,关注一下Top
4 楼lxjlz()回复于 2004-12-03 12:09:08 得分 0
同意二樓的.Top
5 楼acev(睡眠不足(域名 .com ¥55,.cn ¥30 QQ:230567))回复于 2004-12-03 14:12:39 得分 0
同意楼上:)Top
6 楼xys(永不放弃)回复于 2004-12-03 17:19:39 得分 0
用事务:
conn.beginTrans'开始执行检测
'SQL数据库操作过程
------------
conn.execute sql
----------
'SQL数据库操作过程
if conn.error.count=0 then
conn.commitTrans'成功则彻底提交
else
conn.rollbackTrans'发现错误则回执行回滚
end ifTop
7 楼creazyfish(梳分头的鱼)回复于 2004-12-03 19:06:39 得分 0
这个是connetction下面的方法,所以如果你对两张表作操作的都是通过这个数据库联接,则只要在更新这两张表的代码用事务包裹起来就可以了
如楼上所写的结构Top
8 楼chaoweixj()回复于 2004-12-03 19:19:27 得分 0
同意2楼的 你也可以把要写的SQL写在存储过程中 建立事务Top
9 楼freedomjim(我的最爱)回复于 2004-12-23 10:46:43 得分 0
加判断 ,可能事务申请不成功
On Error GoTo errHdr:
cnnSQL.BeginTrans
cnnSQL.Execute StrSQL
cnnSQL.Execute StrSQL
cnnSQL.Execute StrSQL
cnnSQL.CommitTrans
Exit Sub
errHdr:
If Err.Number <> -2147168227 Then cnnSQL.RollbackTrans
cmdImport.Enabled = TrueTop




