SQL Server 2016 Enterpriseエディションへのアップグレード後に問題が発生しました。リンクサーバーとローカルサーバーの両方がver.13.0.4435.0にアップグレードされました
私は次のことを試しました:2016へのアップグレード後にリンクサーバーを削除または作成します。問題は解決しません。
これはエラーが発生するコードスニペットです:
SELECT t.NAME
, t.Disabled
FROM openquery([Linked_Server], 'select t.Name, t.Disabled
from [Linked_Server].[Database-1A].[dbo].[My_tbl] t where t.ID=232627') t;
そしてエラーメッセージ:
リンクサーバー "Linked_Server"のOLE DBプロバイダー "SQLNCLI11"が、メッセージ "遅延準備を完了できませんでした。"を返しました。メッセージ5000 sys.serversにサーバー「リンクサーバー」が見つかりませんでした。正しいサーバー名が指定されていることを確認してください。必要に応じて、ストアドプロシージャsp_addlinkedserverを実行して、サーバーをsys.serversに追加します。
送信するクエリtoリンクサーバー(OPENQUERY
経由)には、リンクサーバーへの独自の参照(4部構成の名前経由)も含めないでください。同じリンクサーバー名を持つ独自のループバックリンクサーバーがあります(その場合でも、リンクサーバーをそのようにスタックしようとはしません)。試してください:
SELECT t.Name, t.Disabled
FROM OPENQUERY
(
[Linked_Server],
N'select t.Name, t.Disabled
from [Database-1A].[dbo].[My_tbl] AS t
where t.ID=232627;'
) AS t;