我正在查看 Microsoft 70-761 考试的问题,但遇到了一个麻烦的问题。该问题要求“产生警告如果”。
显然我应该使用RAISERROR
(or THROW
) 语句。我的问题是——我应该使用什么严重程度来满足这个要求?
我知道 16 是默认值THROW
,但我不愿称其为警告。也许RAISERROR
将严重性设置为 10 会更合适?
我正在查看 Microsoft 70-761 考试的问题,但遇到了一个麻烦的问题。该问题要求“产生警告如果”。
显然我应该使用RAISERROR
(or THROW
) 语句。我的问题是——我应该使用什么严重程度来满足这个要求?
我知道 16 是默认值THROW
,但我不愿称其为警告。也许RAISERROR
将严重性设置为 10 会更合适?
基本上你的答案应该是RAISERROR
严重性 0-10(或者更确切地说,0-9)。
由于THROW
默认值为 16,因此您无法处理严重性。因此,它不能用于引发警告。
您正在寻找的 SQL:
RAISERROR('Warning: <your message>', 0,0) WITH NOWAIT
如果您在消息中需要任何“动态”内容,则需要以下内容:
DECLARE @messageString varchar(max)
set @messageString = 'Warning: The time is ' + convert(varchar(max), getdate(), 120)
RAISERROR(@messageString,0,0) WITH NOWAIT
WITH NOWAIT
如果您希望消息在任何周围事务完成之前出现,则该部分很重要。