SQL Server 2005 当前命令发生了严重错误 应放弃任何可能产生的结果

来源:互联网 发布:中信银行网络贷款 编辑:程序博客网 时间:2024/05/21 18:41

sql server 2005 sp4 x86 on win7 x86 存储过程调用时出现了上面的错误提示: 当前命令发生了严重错误。应放弃任何可能产生的结果。


代码和原因如下:

begin  begin tran    begin try    ...if Exists(select ID from TableName where Amount < UsedAmount)  beginset @ErrMessage = 'a reason'return(1)end  end try  begin catch    if (@@TranCount > 0)    rollback tran    set @ErrMessage = ERROR_MESSAGE()    return(1)  end catch  if (@@TranCount > 0)  commit tran  return(0)  end  

错误的原因是:在try结构中尝试直接退出,正确的写法是:


if Exists(select ID from TableName where Amount < UsedAmount)  raiserror('a reason!', 16, 1)


这错误提示不错,我以为硬盘故障了。

阅读全文
0 0
原创粉丝点击