VB中的事务处理

VB中的事务处理

ID:42722291

大小:42.50 KB

页数:4页

时间:2019-09-20

VB中的事务处理_第1页
VB中的事务处理_第2页
VB中的事务处理_第3页
VB中的事务处理_第4页
资源描述:

《VB中的事务处理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、VB中的事务处理有一下两种方式:1.  conn.BeginTrans'开始   '执行语句   conn.Executesql   IfErr.Number=0Then       conn.CommitTrans'---提交事務   Else     conn.RollbackTransaction       MsgBox"失败"   EndIf     2.  OnErrorGoToerr_trans   intTrans=newConn.BeginTrans  '开始事务   newConn.Executesql   newConn.CommitTrans     

2、       '提交事务   intTrans=0   newConn.Close          '关闭连接   MsgBox"OK"exit_trans:   SetnewConn=Nothing   '释放对象   ExitSub              '退出过程err_trans:    '错误跳到这儿处理    '如果是事务处理中出错,则事务回滚   IfintTrans=1Then      newConn.RollbackTrans   EndIf   Resumeexit_trans      看起来两种方式都没什么问题,但是在我的项目里使用第一种方式却

3、遇到了一个很奇怪的错误,大家见下图:   很明显我使用的是sql,不是存储过程,而且我的sql在查询分析器里运行的完全正常,它却说我有误,真是让我百思不得其解。   更加奇怪的是,这个错误只在项目生成exe以后才会冒出来,也就是说在开发阶段,在VB工程里面运行的是好好的,一旦到开发的差不多了,打包生成exe文件,生成的过程不会出错,运行到特定代码调用这里的时候才会出错!这实在是个郁闷的问题,因为在项目刚开始的时候一般不会生成exe文件来测试运行,而是直接在VB开发环境下运行,在这种情况下是运行的好好的,所以到了项目后期可着实让我忙乱了好久,一直找不到原因,,,,不知道大家有没

4、有遇到过      后来我使用了2方法,这个就没出问题了,不过还是有些地方要注意的,我在这里提醒一下大家吧,也算是对自己研究的总结:   首先看如下代码:   OnErrorGoToerr_trans   intTrans=newConn.BeginTrans  '开始事务   sql="insertintoSales(dish_id,uid)values(8,2);            insertintoSales(dish_id,uid)values(8,2);"    '这里面有两句sql,在查询分析器里执行都是没有问题的   newConn.Executesql 

5、  newConn.CommitTrans            '提交事务   intTrans=0   newConn.Close          '关闭连接   MsgBox"OK"exit_trans:   SetnewConn=Nothing   '释放对象   ExitSub              '退出过程err_trans:    '错误跳到这儿处理    '如果是事务处理中出错,则事务回滚   IfintTrans=1Then      newConn.RollbackTrans      MsgBox"false"   EndIf   Resumee

6、xit_trans   执行的过程中没遇到任何问题,弹出"OK",下面我们改一下sql,将第一句的id值插入字符串'aaaa'   sql="insertintoSales(dish_id,uid)values('aaaa',2);            insertintoSales(dish_id,uid)values(8,2);"   意料之中,弹出了"false",事务回滚了,而且数据库中的数据也没有增加,下面再做另外一个实验:   将第二句的id值插入字符串'aaaa'   sql="insertintoSales(dish_id,uid)values(8,2); 

7、            insertintoSales(dish_id,uid)values('aaaa',2);"   再次执行,让我惊讶的是居然弹出了"OK",怎么会这样呢,急忙查看数据库发现数据并没有增加,还好!   静下心来思考,一番,大概对VB的事务形式做了如下推断:      1.正常情况下,正常执行,这个没有任何问题      2.如果传给Execute方法的sql不是一条语句,而是多条语句的,那么:                 a.如果第一条语句发生了错误,那么它会跳到newConn

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。