使用“xp_sprintf”时出错:参数类型无效

时间:2016-06-17 05:00:09

标签: tsql

我正在尝试编写/运行这样的SQL:

DECLARE @result varchar(max);
EXEC xp_sprintf @result OUTPUT, 'Name: %s', 'John';

但是,当我运行它时,我收到此错误消息:

  

执行扩展存储过程时出错:参数类型无效

     

Msg 50003,Level 1,State 0

一切看起来都不错。

1 个答案:

答案 0 :(得分:1)

原来它不喜欢我使用varchar(max)作为结果变量类型。将其更改为使用max以外的长度解决问题:

DECLARE @result varchar(255);
EXEC xp_sprintf @result OUTPUT, 'Name: %s', 'John';