質問するのは初めてですが、Stackoverflow を何年も使用しています。
互いに通信しない 2 つの個別にリンクされたサーバーがあります。1 つのサーバーから SQL に変数のリストを取得し、その変数のリストを 2 番目の OpenQuery に渡して、そのサーバーから SQL にデータを取り込む必要があります。単一キーの変数を渡すことができました。しかし、文字列化された OpenQuery または単に文字列化されたクエリを使用しようとすると、エラーが返されます。誰かが私を正しい方向に向けることができますか?
現在のクエリ:
DECLARE @string VARCHAR(MAX)
, @SQL NVARCHAR(MAX);
SET @string =
'
Select
col1
from
OpenQuery(server1, ''Select col1 from table1 where col2 = '''' a ''''
';
SET @SQL = 'SELECT * FROM OPENQUERY(Server2, ''SELECT * FROM table2 WHERE col1 = ''''' + @string + ''''' '')';
EXEC sp_executesql @string;
あなたが与えることができるどんな援助も大歓迎です。
2008 SQL サーバーで実行されている SSMS 2012 を使用しています。リンクされた 2 つのサーバーは、リモート接続できない Oracle サーバーです。