目录
--事务
--定义:事务是并发控制的单位,它是永辉定义的一个操作的序列,这些操作
--要么都做,要么都不做,是一个不可分割的整体
--实现事务有两种方式:
--1、SQL Server的事务
--2、ADO.NET的事务
--例子:假设有银行账户A,要转给银行账户B,1500块钱
--1、A账户减去1500
--2、B账户加上1500
select * from Bank
update Bank set jine=jine-1500 where userName='A'
update Bank set jine=jine+1500 where userName='B'
--事务的语法
--begin tran:开始一个事务操作
--commit tran:提交实物操作
--rollback:回滚事务操作
begin tran
declare @sum int
set @sum=0
update Bank set jine=jine+1500 where userName='B'
set @sum=@sum+@@ERROR
update Bank set jine=jine-1500 where userName='A'
set @sum=@sum+@@ERROR
if(@sum<>0)
begin
rollback
end
else
begin
commit tran
end
--方法2:
begin tran
begin try
update Bank set jine=jine-800 where userName='A'
update Bank set jine=jine+800 where userName='B'
commit tran
end try
begin catch
rollback
end catch
--string sql=""
--把事务的操作封装到存储过程