数据库事务

什么是事务(Transaction)

  指访问并可能更新数据库中各种数据项的一个程序执行单元(unit),也就是由多个sql语句组成,必须作为一个整体执行。

  这些sql语句作为一个整体,一起向系统提交,要么都执行,要么都不执行。

语法步骤:

开始事务:BEGIN TRANSACTION

事务提交:COMMIT TRANSACTION

事务回滚:ROLLBACK TRANSACTION


判断某条语句执行是否出错:

全局变量@@ERROR

@@ERROR只能判断当前一条T-SQL语句执行是否有错,为了判断 事务中所有T-SQL语句 是否有错,我们需要对错误 进行累计;

例:SET @errorSum=@errorSum+@@ERROR



BEGIN TRANSACTION 
/*--定义变量,用于累计事务执行过程中的错误--*/
DECLARE @errorSum INT 
SET @errorSum=0  --初始化为0,即无错误
/*--转账:张三的账户少1000元,李四的账户多1000元*/
UPDATE bank SET currentMoney=currentMoney-1000
   WHERE customerName=‘张三‘
SET @errorSum=@errorSum+@@error
UPDATE bank SET currentMoney=currentMoney+1000
   WHERE customerName=‘李四‘
SET @errorSum=@errorSum+@@error  --累计是否有错误
If @errorSum>0
Begin
	rollback transaction
	 select ‘失败’
End
Else
Begin
	commit transaction
	select ‘成功’
End

欢迎加入.net技术交流群数据库事务


数据库事务,布布扣,bubuko.com

数据库事务

上一篇:WinCE6.0 USB Host驱动加载流程详解(二)


下一篇:IBatis配置SQLite