我想构造与OPENROWSET方法一起使用的查询。
示例:
SELECT *
FROM
OPENROWSET
('SQLOLEDB', 'srv'; 'login'; 'mdp';
'SELECT *
FROM Case
WHERE ID = ' + @caseID)
但是当我这样做时,我收到错误:'+'附近的语法不正确
如何构建查询? 感谢
答案 0 :(得分:6)
虽然OPENROWSET
中的查询被指定为字符串,并且通过这种方式看起来非常像动态查询,但语法不允许它在部分内部同样构造。
我担心,你必须建立一个动态查询,它会调用OPENROWSET
,如下所示:
SET @sql = '
SELECT *
FROM
OPENROWSET
(''SQLOLEDB'', ''srv''; ''login''; ''mdp'';
''SELECT *
FROM Case
WHERE ID = ' + @caseID + ''')';
EXEC(@sql);