什么是事务?
事务就是被绑定在一起作为一个逻辑工作单元的SQL语句组,如果任何一个语句操作失败那么整个操作就被失败,进而回滚到操作前状态,或者是上个节点。为了确保要么执行,要么不执行,就可以使用事务。要将一组语句作为事务考虑,就需要通过ACID测试,即原子性,一致性,隔离性和持久性。
事务的作用?
.数据库事务: 数据库事务通常指对数据库进行读或写的一个操作序列。 它的存在包含有以下两个目的: 1、为数据库操作提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。
2、当多个应用程序在并发访问数据库时,可以在这些应用程序之间提供一个隔离方法,以防止彼此的操作互相干扰。
举例说明
首先创建一个表单
代码串举例事务的作用
select * from Customers
go
–定义一个变量,记录错误数
declare @error_nums int
set @error_nums=0
–开始事务
begin transaction tran_change
begin try
update Customers set Remain=Remain-200 where id=1
set @error_nums=@error_nums+@@error
update Customers set Remain=Remain+200 where id=2
end try
begin catch
set @error_nums=@error_nums+1
print ‘错误异常:’+error_number()+‘错误消息:’+error_message()
end catch
if(@error_nums>0)–表示前面有错
rollback transaction tran_change --回滚事务
else
commit transaction tran_change --提交事务
运行后