我试图根据使用throw命令生成的错误在SQL Server存储过程中返回自定义消息。似乎生成了ERROR条件,因为它正被传递回调用代码。但是,未显示自定义消息。
以下是代码片段(@msg和@rowcount在过程的前面声明):
set @msg = cast(@rowcount as varchar(5)) + ' records updated';
throw 53000,@msg,1;
有什么想法吗?
答案 0 :(得分:0)
确保@msg被声明为nvarchar,如果@rowcount为null,则使用 isnull 允许替代0。
Declare @msg nvarchar(50)
set @msg = cast(isnull(@rowcount,0) as nvarchar(5)) + N' records updated';
throw 53000, @msg,1;