SQL Server有4种事务类型,但是从根源来说,只有两种,一种是显式,一种是隐式,区别在于创建和提交的方式。隐式事务由SQL Server自己去开启和提交/回滚,并且在内部保证ACID特性;显式事务则以BEGIN TRAN/TRANSACTION开始,以COMMIT TRAN/TRANSACTION或者ROLLBAK TRAN结束。
提交事务意味着永久地把事务的影响记录到数据库中,回滚意味着把发生的所有操作去除,等于没有做过,不过日志其实还是会记录这个操作。从实践经验来说,建议使用显式事务。