vba-事务

发布时间 2023-04-04 09:36:49作者: TimeNoMuch
Sub accTrans()

    Dim Conn As New ADODB.Connection
    'Conn.Open ".......连接你的Acc数据库.........."
   
    On Error GoTo ErrHndl:
   
    Conn.BeginTrans    '事务开始
    Sql = "update a set num=1000 where id=24"    '第一个sql语句为update。(语法正确)
    Conn.Execute (Sql)
    Sql = "insert into a(num) values('a')"    '第二个sql语句为错误的sql语句
    Conn.Execute (Sql)
    Sql = "insert into a(num) values(33333)"    '第三个sql语句为正确的sql语句
    Conn.Execute (Sql)
   
ErrHndl:
    If Conn.Errors.Count = 0 And Err.Number = 0 Then
        Conn.CommitTrans  '如果没有conn错误,则执行事务提交
    Else
        Conn.RollbackTrans    '否则回滚
    End If

End Sub