在链接服务器上执行输出的动态sql上无法解释的声明错误

时间:2015-06-04 09:10:12

标签: sql-server dynamic-sql linked-server

我正在尝试从MS SQL Server的远程链接服务器上的动态sp_executesql查询中获取输出值,尽管查询有效,但我一直收到以下错误

running query for foo
  

必须声明标量变量“@countOUT”

4

我的查询是

declare @count int
set @sqlcmd = 'select @countOUT = count(*) from '+@instance+'.'+@databasename+'.dbo.SomeTable where size=1';
print 'running query for '+@databasename;
exec sp_executesql @sqlcmd, N'@countOUT int OUTPUT',@countOUT=@count OUTPUT
print @count

它打印出从查询中检索到的@count的正确值。 我已经按照MSDN指南查看了任何stackoverflow问题,但似乎都指出我的查询应该有效。没有错误。

0 个答案:

没有答案