我有一个简单的问题。当我用BEGIN TRAN
开始一个事务时,在中间我写了一些语句,最后写了COMMIT TRAN
,如果一个语句失败会发生什么?交易是否仍然提交,我需要在每个语句后检查@@ERROR <> 0
?如果我在最后写ROLLBACK TRAN
会发生什么?当所有语句都正常工作时,事务是否也会回滚?我有点困惑:/
答案 0 :(得分:0)
如果使用COMMIT TRAN,只有在没有错误的情况下才会执行查询,而ROLLBACK TRAN用于检查查询是否正常工作,即使查询没有问题,它也肯定会回滚。 / p>