【问题标题】:Error Handling in SQL UDFSQL UDF 中的错误处理
【发布时间】:2017-04-20 12:26:26
【问题描述】:

我正在 SQL Server 中创建 UDF。我不能在用户定义的函数中使用 try-catch 块。如何处理 UDF 中的异常或错误?

CREATE FUNCTION GET_POLICY_NO
(@POLICYID nvarchar(15))
 RETURNS varchar(30)
 AS
 BEGIN
 declare @Return varchar(30)
 select @return = (SELECT POLICY_NO FROM tblPolicy WHERE POLICY_ID = @POLICYID)
return @return
 end

虽然 tblPolicy 不存在,但它会报错。像SP一样怎么处理?

【问题讨论】:

  • 最好把你的代码粘贴到这里,如果不查看你的代码就无济于事......为什么你不能使用 try 和 catch 块?
  • @long 在问题中添加代码。
  • 你可以试试我的回答吗
  • 创建一个总是失败的函数有什么意义?
  • 以上代码只是举例。这不是我的要求。其实这个问题是在一次采访中被问到的。 “如何处理错误。在 Udf 中”

标签: sql-server user-defined-functions


【解决方案1】:

您应该检查 This 以获得一些答案

我也有一些建议:

  1. 由于您无法在函数中打印或使用 try catch 块,因此请改用存储过程,尽管我认为您无法捕获“Invalid object name 'tblPolicy'”错误。我建议检查表是否存在,然后执行查询。

希望对你有帮助。

【讨论】:

  • 以上代码只是举例。这不是我的要求。实际上这个问题是在一次采访中被问到的。 “如何处理错误。在 Udf 中”
  • @SurajKMad 我明白了,但这有点误导,而且我相信您在提问之前可以找到很多关于这个主题的信息!干杯
猜你喜欢
  • 1970-01-01
  • 2016-04-11
  • 1970-01-01
  • 1970-01-01
  • 2021-07-07
  • 1970-01-01
  • 1970-01-01
  • 2015-11-29
  • 1970-01-01
相关资源
最近更新 更多