Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

BeginTrans、CommitTrans 和 RollbackTrans 事务方法

时 间:2013-11-23 08:36:23
作 者:杜超-2号   ID:16058  城市:江阴
摘 要:这些事务方法按如下方式管理 Connection 对象中的事务进程:
正 文:


  • BeginTrans - 开始新事务。


  • CommitTrans - 保存任何更改并结束当前事务。它也可能启动新事务。


  • RollbackTrans - 取消当前事务中所作的任何更改并结束事务。它也可能启动新事务。

语法


level = object.BeginTrans()


object.BeginTrans


object.CommitTrans


object.RollbackTrans


返回值


BeginTrans 可以作为函数调用,用于返回指示事务嵌套层次的长整型变量。


参数


object   Connection 对象。


Connection


如果希望以独立单元保存或取消对源数据所做的一系列更改,请使用这些具有 Connection
对象的方法。例如在货币转帐时,必须从帐户中减去某个数额并将其对等数额添加到另一个帐户。无论其中的哪个更新失败,都将导致帐户收支不平衡。在打开的事务中进行这些更改可确保只能选择进行全部更改或不作任何更改。


注意   并非所有提供者都支持事务。需验证提供者定义的属性“Transaction
DDL”是否出现在 Connection 对象的 Properties
集合中,如果在则表示提供者支持事务。如果提供者不支持事务,调用其中的某个方法将返回错误。


一旦调用了 BeginTrans 方法,在调用 CommitTrans RollbackTrans
结束事务之前,提供者将不再立即提交所作的任何更改。


对于支持嵌套事务的提供者来说,调用已打开事务中的 BeginTrans 方法将开始新的嵌套事务。返回值将指示嵌套层次:返回值为 1
表示已打开顶层事务(即事务不被另一个事务所嵌套),返回值为 2 表示已打开第二层事务(嵌套在顶层事务中的事务),依次类推。调用 CommitTrans
RollbackTrans 只影响最新打开的事务;在处理任何更高层事务之前必须关闭或回卷当前事务。


调用 CommitTrans 方法将保存连接上打开的事务中所做的更改并结束事务。调用 RollbackTrans
方法还原打开事务中所做的更改并结束事务。在未打开事务时调用其中任何一种方法都将引发错误。


取决于 Connection 对象的 Attributes 属性,调用
CommitTrans RollbackTrans 方法都可以自动启动新事务。如果 Attributes
属性设置为 adXactCommitRetaining,提供者在 CommitTrans 调用后会自动启动新事务。如果
Attributes 属性设置为 adXactAbortRetaining,提供者在调用 RollbackTrans
之后将自动启动新事务。

 

远程数据服务

BeginTransCommitTransRollbackTrans 方法在客户端
Connection
对象上无效。



Access软件网官方交流QQ群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助