我想知道是否有一种方法可以检查变量@varChar
是否是NULL
而变量@bit
是0
。
我的尝试
if ISNULL(@varChar, false) and (@bit = 0)
begin
RAISERROR ('varchar was not specified', 16,1);
end
我的问题是ISNULL(check_if_null, replacement_value)
不能像这样工作,我找不到其他选择。
答案 0 :(得分:2)
您可以使用IS NULL
:
IF @varCHAR IS NULL AND @bit = 0
BEGIN
RAISERROR ('varchar was not specified', 16,1);
END
另一种方法是:
DECLARE @varCHAR VARCHAR(MAX) = NULL;
IF ISNULL(@varCHAR,'false') = 'false' AND @bit = 0
RAISERROR ('varchar was not specified', 16,1);
答案 1 :(得分:0)
在检查值是否为空时使用IS NULL
。
IF @varChar IS NULL and @bit = 0
RAISERROR ('varchar was not specified', 16,1);