リンクされたサーバーを追加し、リンクされたサーバーリストに表示されていますが、問い合わせをすると、dbサーバー名でエラーが発生します。
EXEC sp_helpserver
EXEC sp_addlinkedserver 'aa-db-dev01'
Select * from openquery('aa-db-dev01','Select * from TestDB.dbo.users')
Msg 102, レベル 15, 状態 1, 行 1 'aa-db-dev01'付近の構文が正しくありません。
SELECT * FROM [server].[database].[schema].[table]
私はこれで動作しました。SSMSのインテリセンスでは構文エラーとしてアンダーラインが表示されることがありますが、リンク先のサーバーが設定されていて、クエリがその他の点で正しい場合は動作するはずです。
私はオープンクエリを使用して、次のようにこのタスクを実行します。
select top 1 *
INTO [DATABASE_TO_INSERT_INTO].[dbo].[TABLE_TO_SELECT_INTO]
from openquery(
[LINKED_SERVER_NAME],
'select * from [DATABASE_ON_LINKED_SERVER].[dbo].[TABLE_TO_SELECT_FROM]'
)
上記の例では、オープンクエリを使用して、リンクされたサーバー上のデータベースから選択したデータベースにデータを選択します。
注:参照を完全にするために、次のような単純な選択を実行できます。
select top 1 * from openquery(
[LINKED_SERVER_NAME],
'select * from [DATABASE_ON_LINKED_SERVER].[dbo].[TABLE_TO_SELECT_FROM]'
)