事务是并发和恢复控制的基本单元。
事务四个属性:原子性、一致性、隔离性、持久性。
原子性:一个事务是一个不可分割的单位,事务中包括的诸多操作要么成功要么都失败。
一致性:事务必须使数据库从一个一致性状态转变到另一个一致性状态。原子性和一致性是密不可分的。
隔离性:一个事务的执行不可能被其他事务干扰。即一个事务内部的操作及使用数据对并发的其他的事务是隔离的,并发执行的各个事务之间互相不能干扰。
持久性:一个事务一旦提交,他对数据库中数据的改变应该是永久性的,接下来其他操作或故障不应该对其有任何影响。
BEGIN TRANSACTION declare @sumError int =0 update tl_date set tel_num=999 where id=1 set @sumError=@sumError+@@ERROR update tl_date set tel_num='www' where id=2 set @sumError=@sumError+@@ERROR if(@sumError<>0) begin --失败了 ROLLBACK TRANSACTION end else begin --成功了 COMMIT TRANSACTION end