使用RAISERROR返回大于50000的异常数
本文关键字:异常 50000 大于 RAISERROR 返回 使用 | 更新日期: 2023-09-27 18:07:18
我从SQL Server 2012中的存储过程返回一个异常,如下所示:
DECLARE @errnum nchar(5), @errmsg nvarchar(2048);
SELECT
@errnum = 51000,--RIGHT('00000' + ERROR_NUMBER(), 5),
@errmsg = @errnum + ' ' + ERROR_MESSAGE();
RAISERROR (@errmsg, 16, 1);
SqlException在c#代码中返回,编号为50000,在这里它执行进一步的操作。出于某些业务逻辑原因,我需要返回的数字大于50000。例:我们使用THROW关键字。
THROW 51000,'error',1
我怎么才能做到呢?
您应该使用sp_addmessage为这个错误号创建一个用户定义的错误消息,然后使用消息id:
调用RAISERRORRAISERROR (51000, 16, 1)