--开始事务 begin transaction
--提交事务 commit transaction
--撤销事务 rollback transaction
--全局变量 @@ERROR
--SET @errorsum=@errorsum+@@ERROR
--每条单独的语句都是一个事务,如果成功执行,则自动提交,如果错误,则撤销 这是默认模式
create table bank
(
customerEname nvarchar(200),
currentMoney money
)
insert into bank values ('张三',1000)
insert into bank values ('李四',1)
begin transaction
declare @errorSum int
set @errorSum=0
update bank set currentMoney=currentMoney-1000
where customerEname='张三'
set @errorSum=@errorSum+@@error
update bank set currentMoney=currentMoney+1000
where customerEname='李四'
set @errorSum=@errorSum+@@error
if (@errorSum<>0)
begin
print '转账失败'
rollback transaction
end
else
begin
print '转账成功'
commit transaction
end
Access软件网交流QQ群(群号:198465573) |