有三种。第一种是显式声名的事务,这种事务要以begin
transaction为事务的起始标志。第二种是自动提交事务,这是sql
server的缺省设置。每一个t-sql语句在执行完成后会被自动提交。第三种是隐含事务,在这种方式下,sql
server会在当前事务被提交或回滚后自动启动一个新的事务,这个新事务直到用户执行commit或rollback为止,这时系统又会启动一个新事务。这样就形成了一个连续的事务链。
分为:
自动提交事务,显式事务,隐性事务
事务
事务是单个的工作单元。如果某一事务成功,则在该事务中进行的所有数据更改均会提交,成为数据库中的永久组成部分。如果事务遇到错误且必须取消或回滚,则所有数据更改均被清除。
自动提交事务
每条单独的语句都是一个事务。
显式事务
每个事务均以
BEGIN
TRANSACTION
语句显式开始,以
COMMIT
或
ROLLBACK
语句显式结束。
隐性事务
在前一个事务完成时新事务隐式启动,但每个事务仍以
COMMIT
或
ROLLBACK
语句显式完成。