您的位置:首页 > 数据库

Sql Server使用事务实现--转账问题

2012-11-08 19:33 204 查看
create table Bank

(

Cid char(4) primary key,

balance money

)

alter table Bank

add constraint CH_balance check (balance>=10)

insert into Bank values('0001',1000)

insert into Bank values('0002',10)

update Bank set balance=balance-1000 where Cid='0001'

update Bank set balance=balance+1000 where Cid='0002'

begin tran

begin try

declare @errorsum int=0

update Bank set balance=balance-900 where Cid='0001'

set @errorSum=@errorSum+@@error

update Bank set balance=balance+900 where Cid='0002'

set @errorSum=@errorSum+@@error

commit

print '提交!!'

end try

begin catch

rollback

print '回滚!'

end catch

打开"隐式事务":set
implicit_Transactions on

关闭“隐式事务”:set
implicit_Transactions off
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐