当前位置: 代码迷 >> Sql Server >> 情帮忙看上事务语法对错
  详细解决方案

情帮忙看上事务语法对错

热度:37   发布时间:2016-04-27 11:04:40.0
情帮忙看下事务语法对错。
[code=SQL][/code]USE [HXTst]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[Pro_AdvBackAmount]

as
BEGIN

declare @sql nvarchar(max)
declare @PeriNm int
declare @CtNm VARCHAR(MAX)
declare @OverDueCg float

BEGIN TRANSACTION 
set @sql='update AdvBackInf Set ApporveState=''已审核'' where [email protected]'
  exec @sql
 set @sql='update InterestReceive set RepayAmount=receivableAmount,[email protected] where [email protected]'
  exec @sql
 set @sql='update InterestReceive set [email protected]''where
 [email protected] and [email protected] and RepayType=''PeriodOverdueCharge'''
 exec @sql

COMMIT TRANSACTION 

IF ( @@ERROR <> 0 )

ROLLBACK TRANSACTION 

end

以前都是ADO处理事务
以上代码是我的T-SQL事务处理,不知道对没有,情大家帮忙看下,

------解决方案--------------------
一个事务中有三条exec @sql,出错回滚执行只会回滚出错的操作,出错之前的操作不会被回滚的
  相关解决方案