首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TSQL RAISERROR作为警告

TSQL RAISERROR作为警告
EN

Stack Overflow用户
提问于 2018-03-31 20:25:03
回答 2查看 5.7K关注 0票数 3

我正在为微软的70-761考试翻阅问题,我遇到了一个麻烦的问题。这个问题要求“生成一个警告 if”。

显然,我应该使用RAISERROR (或THROW)语句。我的问题是-我应该使用什么严重性来满足这个要求?

我知道16是THROW的缺省值,但我不愿称之为警告。也许严重性设置为10的RAISERROR更合适?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-01 08:24:26

您应该简单地检查文档:https://learn.microsoft.com/en-us/sql/relational-databases/errors-events/database-engine-error-severities

基本上,您的答案应该是严重性为0-10 (或者更确切地说,0-9)的RAISERROR

使用THROW,您无法处理严重程度,因为默认情况是16。因此,不能使用它来抛出警告。

票数 2
EN

Stack Overflow用户

发布于 2019-10-22 08:30:47

您要查找的SQL:

代码语言:javascript
复制
RAISERROR('Warning: <your message>', 0,0) WITH NOWAIT

如果您需要消息中的“动态”内容,则需要以下内容:

代码语言:javascript
复制
DECLARE @messageString varchar(max)     
set @messageString = 'Warning: The time is ' + convert(varchar(max), getdate(), 120) 
RAISERROR(@messageString,0,0) WITH NOWAIT

如果您希望消息在任何周边事务完成之前出现,那么WITH NOWAIT部件是很重要的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49592076

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档