繁体   English   中英

SQL 服务器返回码-6,是什么意思?

[英]SQL Server return code -6, what does it mean?

我有一个可以正常工作的存储过程,即返回码为 0。在某些情况下,我 RAISERROR 是用户定义的错误(> 50000)。 在这些情况下,回报是-6。 我只是好奇,-6是什么意思? 我没有在程序中设置返回码,所以这个数字是SQL 服务器(系统)生成的。

我发现了这个说法:

这些负数是否有任何意义,有点难说。 过去的情况是,返回值 -1 到 -99 是为系统生成的返回值保留的,而早期版本的 SQL 服务器的联机丛书为值 -1 到 -14 指定了含义。 但是,SQL 2000 的在线图书对任何此类保留都保持沉默,也没有解释 -1 到 -14 的含义。

有谁知道这些返回码的“隐藏”含义?

我正在使用 SQL Server 2008 R2。

好吧,我找到了这个……

错误时从存储过程返回值

If you have a RETURN statement with an explicit return value, that is of course the return value.

但是如果没有 RETURN 语句,但执行过程中发生错误,则返回值为 10 减去错误的严重级别。 除以零是第 16 级,因此返回值为 -6。 权限错误是典型的 14 级,因此返回值为 -4。

就我而言,我提出的错误的严重程度是 16,所以 10 - 16 = -6。

感谢大家的意见。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM