Dim SqlList As List(of String) = Args(0) '传入需要执行的sql语句
Dim cmd As new SQLCommand
cmd.ConnectionName = Mydata
Try
cmd.BeginTransaction() '开始事务
For Each sql As String In SqlList
cmd.CommandText = sql
cmd.ExecuteNonQuery()
Next
cmd.Commit() '提交事务
sqlList.Clear() '清空集合
Catch ex As Exception
cmd.Rollback() '回滚事务
msgbox(ex.tostring) '返回错误信息
sqlList.Clear() '清空集合
End Try
表单修改后将所的insert,update,delete等sql语句分别加入到一个集合中通过 上面的函数统一遍历执行保存,
比如有5条语句,前面3条执行正常,每4条执行出错了,这种情况下前面3条已执行的数据好象不会回滚,
有没有办法实现只要有一条sql语句执行出错,都可以全部回滚?
谢谢!