VB中如何获得事务提交后的状态?
时间:2011-07-25
来源:互联网
现在的情况是,如果SQL语句有错,会自动回滚,如果无错则提交事务。但问题是无论回滚或提交都不会返回错误信息,所以无法直观的知道是否提交成功
我的VB语句是这样的 :
VB code
strAdoSQL为之前组成的SQL语句组,有几个语句拼接而成的。
现在就是 就算有回滚,也不会跳到TransErr这里。
所以,我想请问下,有什么方法可以知道事务执行后究竟是回滚还是提交成功啊???
我的VB语句是这样的 :
VB code
On Error GoTo TransErr Dim cn As ADODB.Connection Set cn = New ADODB.Connection cn.ConnectionString = PublicStr cn.Open cn.BeginTrans cn.Execute (strAdoSQL) cn.CommitTrans MsgBox "所选操作成功!", 0 + 48, "操作成功!" Set cn = Nothing End If TransErr: '事务错误处理 Screen.MousePointer = 0 If Err.Number <> 0 Then cn.RollbackTrans MsgBox "所选操作失败!", 0 + 48, "操作失败!" If cn.State <> 0 Then cn.Close Exit Sub End If
strAdoSQL为之前组成的SQL语句组,有几个语句拼接而成的。
现在就是 就算有回滚,也不会跳到TransErr这里。
所以,我想请问下,有什么方法可以知道事务执行后究竟是回滚还是提交成功啊???
作者: szbory 发布时间: 2011-07-25
执行一次查询,看看之前的操作是否有效
作者: Veron_04 发布时间: 2011-07-25
引用 1 楼 veron_04 的回复:
执行一次查询,看看之前的操作是否有效
执行一次查询,看看之前的操作是否有效
额~~还有没更直接的办法呢? 比如可以通过什么状态值来获取是执行还是回滚呢 就像STATE那些一样
作者: szbory 发布时间: 2011-07-25
数据的Rockback与Error是两个概念,从你代码来看,只有代码发生错误了,才跳至TransErr: '事务错误处理。
作者: cnuser1 发布时间: 2011-07-25
引用 3 楼 cnuser1 的回复:
数据的Rockback与Error是两个概念,从你代码来看,只有代码发生错误了,才跳至TransErr: '事务错误处理。
数据的Rockback与Error是两个概念,从你代码来看,只有代码发生错误了,才跳至TransErr: '事务错误处理。
是的是的, 现在就只不知道如何才能获取事务是否是回滚了
作者: szbory 发布时间: 2011-07-25
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28