ADO.NET事务处理方法有哪些

这篇文章主要介绍“ADO.NET事务处理方法有哪些”,在日常操作中,相信很多人在ADO.NET事务处理方法有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ADO.NET事务处理方法有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联专业为企业提供丹徒网站建设、丹徒做网站、丹徒网站设计、丹徒网站制作等企业网站建设、网页设计与制作、丹徒企业网站模板建站服务,10余年丹徒做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

ADO.NET事务处理方法:
◆BeginTrans:开始1个事务;
◆CommitTrans:提交事务,将事务中的操作写入数据源。
◆RollBackTrans:滚回事务,取消操作。

当同时更新多个表时,为了保证数据一致性而必须使用事务,比如有两个表,一个是支出表,一个是余额表,当支出一项费用时,支出费用增加,余额减少,需要对这两个表同时更新,但如果不用事务,倘若在更新支出表后发生错误,则余额表没有更新,不合要求。这时就要把它们封存装到一个事务里。确保多表操作的完整性。此外,也可以用它对同一个表的多步操作进行封装,使多步操作成为单个单元。

一般地,我们在BeginTrans处加一条On Error Goto ErrNum的出错捕获语句,然后在错误处理程序中使用RollBackTrans取消事务。形如:

cn.BeginTrans  on Error Goto ErrNum  …更新表1  …更新表2  …  cn.CommitTrans  Exit Sub  ErrNum:  cn.RollBackTrans  msgbox //出错提示

事务可以嵌套,由begintrans方法返回1个长整数表示当前事务是第几层,如返回1为当前事务不包含在任何事务中。CommitTrans和 RollBackTrans结束最近的BeginTrans打开的那个事务。在程序中用begintrans开始1个事务后,应使用 committrans或rollbacktrans方法结束,如果不用,则在程序结束后事务全部滚回,也就是说,系统不会自动去提交任何事务。ADO.NET事务处理方法例如:

cn.BeginTrans  rst.MoveNext  cn.Execute "insert into BB values('嫖客店','aaa',0,'0','0',0,'0')"  cn.CommitTrans

有两种情况需要说明一下:在事务中也可能出现问题,导致被迫放弃事务:一种情况是一个关健字段被锁定,不能进行写操作;另一种情况是字段值超出范围,如字段为Integer,但实际值大于32767,字段为Text,但值字串长超过32K等,这样会导致事务强迫放弃。

到此,关于“ADO.NET事务处理方法有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


本文题目:ADO.NET事务处理方法有哪些
分享URL:http://bzwzjz.com/article/piocde.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 手机网站制作 成都网站制作 营销型网站建设 成都网站建设 做网站设计 高端网站建设 成都网站建设 成都做网站建设公司 网站建设 成都网站设计 营销型网站建设 高端网站设计推广 成都模版网站建设 温江网站设计 成都营销网站制作 成都网站设计 泸州网站建设 广安网站设计 成都网站制作 四川成都网站设计 成都网站建设 移动网站建设