【发布时间】:2016-02-22 22:18:41
【问题描述】:
这是我的代码
DECLARE @stringvariable nvarchar(200) = 'Hello';
DECLARE @sql nvarchar(2000) = SELECT * INTO ##global FROM OPENQUERY(DB1, ''EXEC GETCASE ''' + @stringvariable + ''''')'
打印 @sql 返回格式正确的查询,但是 SQL Server 不喜欢 @stringvariable 并返回错误
消息 102,第 15 级,状态 1,第 11 行
'Hello' 附近的语法不正确。
这是输出查询的样子
SELECT * INTO ##global FROM OPENQUERY(DB1, 'EXEC GETCASE 'Hello'')
如何避免此错误?似乎因为我的存储过程需要一个字符串参数,所以它会抛出查询。我读过OPENQUERY 不支持变量,但是我已经为变量设置了参数,所以它应该可以工作吗?
感谢您的帮助!
【问题讨论】:
标签: sql sql-server-2008 openquery