如何从SQL Server 2005函数中抛出异常?

NSN*_*NSN 3 sql sql-server-2005

当我尝试使用RaiseError时,我得到以下编译问题

消息443,级别16,状态14,过程ConvertSessionToCurr,第19行在函数内无效使用副作用运算符'RAISERROR'.

那么我们如何处理函数中的异常/将其更改为out param存储过程?这听起来真是个无赖!

gbn*_*gbn 5

选项:

  • 返回NULL或一些sentinel值
  • 使用存储过程
  • 使其成为内联代码

我的想法是,如果你在UDF中需要RAISERROR,那你就错了...