Sql server 消息的Raiseerror和Concat

Sql server 消息的Raiseerror和Concat,sql-server,tsql,raiseerror,Sql Server,Tsql,Raiseerror,我想做这样的事情 但它就是不起作用。我如何做到这一点?我使用的是SQL Server 2005。我经常使用raiserror。我们有一些存储过程,它们每天晚上都从.Net应用程序调用以进行批处理,而.Net应用程序希望以这种方式记录过程输出。我不知道为什么,但我通常必须在调用raiserror之前构建字符串 RAISERROR中的错误消息实际上与C中的printf函数具有类似的语法,因此假设您的参数是需要使用的整数类型: raiserror(N'Error in case @isFishy =

我想做这样的事情


但它就是不起作用。我如何做到这一点?我使用的是SQL Server 2005。

我经常使用raiserror。我们有一些存储过程,它们每天晚上都从.Net应用程序调用以进行批处理,而.Net应用程序希望以这种方式记录过程输出。我不知道为什么,但我通常必须在调用raiserror之前构建字符串

RAISERROR中的错误消息实际上与C中的printf函数具有类似的语法,因此假设您的参数是需要使用的整数类型:

raiserror(N'Error in case @isFishy = %d @isSmarmy = %d @isTasty = %d',10,1,@isFishy,@isSmarmy,@isTasty)

查看详细信息和其他选项

我意识到您的参数看起来更像位数据类型,而不是INT,但似乎不支持位作为构建消息字符串的有效类型
raiserror(N'Error in case @isFishy = %d @isSmarmy = %d @isTasty = %d',10,1,@isFishy,@isSmarmy,@isTasty)