これは私の問題です。リンクサーバーを定義しました。これをLINKSERVと呼びましょう。これにはLINKDBというデータベースがあります。私のサーバー ( MYSERV ) にはMYDBデータベースがあります。
以下のクエリを実行したいと思います。
SELECT *
FROM LINKSERV.LINKDB.LINKSCHEMA.LINKTABLE
INNER JOIN MYSERV.MYDB.MYSCHEMA.MYTABLE ON MYKEYFIELD = LINKKEYFIELD
問題は、プロファイラーを見ると、LINKSERVサーバーで多数の SELECT が作成されていることがわかります。それらは次のように見えます:
SELECT *
FROM LINKTABLE WHERE LINKKEYFIELD = @1
@1
SELECT ごとに変更されるパラメーターはどこにありますか。もちろん、これは実行されていないように見えるため、望ましくありません。私は間違っている可能性がありますが、問題は JOIN での異なるサーバーの使用に関連していると思います。実際、これを回避すると、問題はなくなります。
私は正しいですか?解決策はありますか?前もって感謝します。