CASE下的SQL RAISERROR

时间:2016-08-03 14:10:41

标签: sql error-handling sql-server-2016 raiserror

我试图在我的查询中使用RAISERROR,但我无法使其正常运行。毫无疑问,我试图以错误的方式做到这一点。

例如,在下面的代码中,如果DestType字段为空或NULL,我希望它终止查询。

SELECT TOP 1
    DocEntry,
    DocNum,
    CAST(DocDate AS DATE) AS [DocDate],
    CAST(DocDueDate AS date) AS [ShipDate],
    Comments,
    DestType
FROM ....

我尝试将它放在一个CASE WHEN IN类型的东西但是没有用。

非常感谢!

1 个答案:

答案 0 :(得分:1)

RAISERROR是一个无法内联的陈述。

使用SQL-Server 2016(标记为),您可以使用

BEGIN TRY
    Do Something here
END TRY
BEGIN CATCH
    RAISERROR ...parameters...
END CATCH