在语句内同样可以使用begin tran...commit

解决方案 »

  1.   

    create proc test
    as
    begin tran
    if @@error<>0
    begin
      rollbak
    end
    commit tran
    go
      

  2.   

    在存储过程的sql语句中用就是了,没有什么特殊的,至少我还不知道!
      

  3.   


    CREATE PROC TEST
    AS
    Begin Tran 
    Declare @SQL nvarchar(4000);
    Set @Sql = 'SELECT * FROM tb'
    Exec(@Sql) 
    If @@Error <> 0
       Begin
         RollBack Tran
         Return -1
       End
    Else
       Begin
         Commit Tran    
       End    整个完整点的