事物的语法

例:事务在银行转帐过程的中的简单应用,将张三的账户(14200101033014122)转1000到李四的账户(14200101000014243)上。 

USE stuDB    --使用数据库 GO 
SET NOCOUNT ON --不显示受影响的行数信息 print '查看转帐事务前的余额' SELECT *  FROM bank  GO 
BEGIN TRANSACTION  --开始事务(指定事务从此处开始,后续的T-SQL
语句是一个整体 DECLARE @errorSum INT   --定义变量,用于累计事务执行过程中的错误 SET @errorSum=0           --初始化为0,即无错误 UPDATE bank  
SET currentMoney=currentMoney-1000 
 WHERE customerNumber='14200101033014122' --转出:张三的账户少了 1000元, 
SET @errorSum=@errorSum+@@error    --累计是否有错误 UPDATE bank  
SET currentMoney=currentMoney+1000 
 WHERE customerNumber='14200101000014243'  --转入:李四的账户多了1000元 
SET @errorSum=@errorSum+@@error     --累计是否有错误 print '查看转帐事务过程中的余额' SELECT * FROM bank  
IF @errorSum<>0          --根据是否有错误,确定事务是提交还是撤销 
--如果有错误 
 BEGIN 
print '交易失败,回滚事务' ROLLBACK TRANSACTION  END   
ELSE   BEGIN 
    print '交易成功,提交事务,写入硬盘,永久的保存'     COMMIT TRANSACTION      END GO 
print '查看转帐事务后的余额' SELECT * FROM bank 

 

 

posted on 2017-03-31 16:02  哦呵呵G  阅读(289)  评论(3编辑  收藏  举报

导航