如何在运行 SQL Server 2005 脚本时抑制 T-SQL 警告?

问题描述 投票:0回答:2

是否可以抑制 T-SQL 脚本生成的警告?如果是的话,怎么办?

我知道我可以使用

关闭“受影响的记录”消息
SET NOCOUNT ON

但是有没有相当于警告的东西呢? 例如:

Warning: Null value is eliminated by an aggregate or other SET operation.

如果我预料到这些错误,它有助于从大脚本中筛选出真正的错误。

谢谢。

sql sql-server suppress-warnings
2个回答

0
投票
SET ANSI_WARNINGS OFF

是问题的正确答案,但正如 @usr 指出的那样,你需要小心。 为了获得最佳结果,我的建议是将其范围限制在引发警告的确切位置。

原因可以在文档中找到,并且由于答案仅包含 MSFT 网页的链接,我想我会提出最相关的详细信息。 至少是那些通过隐藏、压制或造成误导性错误而影响我的人。

“设置为 OFF 时,被零除和算术溢出错误会导致返回空值。”

换句话说,您可能希望失败的算术运算可能会返回 NULL 而不是错误。 对于函数中的从属代码部分,它不会返回可能需要的停止处理,而是返回一个 null

  1. 继续被更高级别的操作有效地视为零,或者
  2. 击败更高级别的错误捕获,或者
  3. 其他我现在不记得了。
© www.soinside.com 2019 - 2024. All rights reserved.