如下:分别对两个数据源的表进行操作(log_insert为插入日志,str_insert为新增行),怎么执行事务才能保持一致?
个人理解:假设数据表数据验证不通过导致失败,将触发日志回滚?
Try
Connections(gs_strActiveConn).BeginTransaction()
cmd.ConnectionName = gs_strActiveConn
cmd.CommandText = log_insert
cmd.ExecuteNonQuery
Connections(gs_strActiveConn).Commit '提交事务,所有操作生效
cmd.ConnectionName = sqlcoon 'sqlcoon有可能与日志不同数据源
cmd.CommandText = str_insert
cmd.ExecuteNonQuery '插入数据
Catch ex As Exception '如果出错
Connections(sqlcoon).Rollback() '回滚事务,撤销所有操作
End Try
[此贴子已经被作者于2018/7/10 15:49:25编辑过]