0

我有以下问题,我需要从我的 if 语句中显示一些错误消息。例如,如果满足 3 个条件中的 2 个,我需要 raisevent 显示 2 条消息。

IF @var1 > 1
BEGIN 
    SET @err = 'ASD'
END

IF @var1 <4
BEGIN 
    SET @err = 'ZXC'
END

IF @var = 3
BEGIN
   SET @err = 'QWE'
END

为了@var1 = 2

我需要在一个 raiserror 中显示 2 条错误消息。我怎样才能做到这一点?

4

1 回答 1

0

您的代码在 BEGIN CACTH 块内吗?如何以低于 11 的严重性引发这样的错误:

IF @var1 > 1
BEGIN 
    SET @err = 'ASD';
    RAISEERROR(@err, <your_severity>, <state>)
END

IF @var1 <4
BEGIN 
    SET @err = 'ZXC'
    RAISEERROR(@err, <your_severity>, <state>)
END

IF @var = 3
BEGIN
   SET @err = 'QWE'
   RAISEERROR(@err, <your_severity>, <state>)
END

或者结合 message_erorr:

IF @var1 > 1
BEGIN 
    SET @err += ' ASD'; 
END

IF @var1 <4
BEGIN 
    SET @err += ' ZXC'
END

IF @var = 3
BEGIN
   SET @err += ' QWE'
END

RAISEERROR(@err, <your_severity>, <state>)
于 2015-08-26T10:39:13.527 回答