VB6 Access 事务(Transaction)


VB6 Access 事务

On Error GoTo err_trans
intTrans = conn.BeginTrans '开始事务
X = count
For i = 0 To X
sql="insert into Sales(dish_id,uid) values......."
conn.Execute sql
Next i
conn.CommitTrans '提交事务
intTrans = 0
MsgBox "OK"

exit_trans:
Exit Function'退出过程

err_trans: '错误跳到这儿处理

'如果是事务处理中出错,则事务回滚
If intTrans = 1 Then
conn.RollbackTrans
MsgBox "false"
End If
GoTo exit_trans '跳转到exit_trans


注意:多条语句合并执行会导致无法准确返回执行结果
如:

For i = 0 To X
sql= sql & "insert into Sales(dish_id,uid) values......."
Next i
conn.Execute sql
conn.CommitTrans '提交事务

参考:http://wenku.baidu.com/link?url=xTP1FCbU5vC6iYD1Ud6RVzSiBllB_fgr4bJHLtXUVTGMAMmaSnLxI9Nfy-44wS6roLxjqSp_TainoHdHa0L5ue6-003V3mfWHqc8-KQ55Va

DAO 模式,Library DAO
C:\Program Files\Common Files\dao\dao360.dll
Microsoft DAO 3.6 Object Library

Sub testTrans()
On Error GoTo trans_err
Dim sql As String
Dim gdbCurrentDB As Database
Set gdbCurrentDB = DBEngine.OpenDatabase("C:\wgscd\Db\test.mdb")
BeginTrans
sql = "UPDATE users SET age=228 WHERE id=1"
gdbCurrentDB.Execute sql
sql = "insert into users (name,sex,a5ge) values('wgscd3','m',43)"

  gdbCurrentDB.Execute sql
  CommitTrans
  gdbCurrentDB.Close
  Set gdbCurrentDB = Nothing
  MsgBox "OK"
  Exit Sub

trans_err:
' Rollback
gdbCurrentDB.Close
Set gdbCurrentDB = Nothing
MsgBox "false"
End Sub

优质内容筛选与推荐>>
1、第3章 文件I/O(3)_内核数据结构、原子操作
2、poj 2771 Guardian of Decency 解题报告
3、第七、八章总结
4、组合和全排列
5、python作业-网络编程


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号