SQL只有一个throw在if语句中

前端之家收集整理的这篇文章主要介绍了SQL只有一个throw在if语句中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在几个存储过程中添加一些验证,并且需要检查一些变量是否不为空(它们在存储过程的前面填充).

我一直在尝试在if语句中添加一个“throw”,如下所示:

IF (@val is null)
BEGIN
    THROW 50001,'Custom text',1
END@H_502_5@ 
 

这会导致“throw”的语法错误,因为它在throw之前在if语句中寻找其他代码,但我只需要在if语句中执行throw.

我需要保持存储过程尽可能的轻,以尽可能快地执行.

有没有人有任何想法?

解决方法

DECLARE @val NVARCHAR(50) = NULL
IF @val is null

    RAISERROR('Custom text',16,16)@H_502_5@ 
 

为不同层次

http://msdn.microsoft.com/en-us/library/ms164086.aspx

原文链接:https://www.f2er.com/mssql/75769.html

猜你在找的MsSQL相关文章