0

SSMS の GUI を使用して、実行するサーバーを指定できることは承知しています。

クエリ スクリプト内から" use ServerA.[DBName] "と言うのと同様に、特定のサーバーを要求する方法はありますか?

4

2 に答える 2

1

これが不可能であることは確かです。(データベース名を変更するのと同じように USE [db_name])

Linked Serverただし、クエリ内で 2 番目のサーバーに接続し、2 番目のデータ ソースのリソースを使用できるようにするという手法があります。

詳細については、このリンクを参照してください http://msdn.microsoft.com/en-us/library/ms188279.aspx

例えば:

select foo.id 
from db1.table1 foo, 
     Server2.db_name.scheman_name.table_name bar 
where foo.name=bar.name

他の回答(OpenDataSource)で言及されているのは次のとおりです。

リンク サーバー名を使用せずに、4 部構成のオブジェクト名の一部としてアドホック接続情報。

これはほとんど暗黙的ですLinked Server

于 2012-11-21T23:25:35.500 に答える
0

OpenDataSourceを使用すると、クエリの範囲内でアクセスするサーバー インスタンスを設定する方法になる場合があります。背景や詳細については、この SO の質問を参照してください。

もう 1 つのオプションはTRY..CATCH、クエリが を使用して正しいサーバーで実行されていることを確認し、SERVERPROPERTY()そうでない場合は例外をスローするブロックです。これにより、人間が読みやすいエラー メッセージをユーザーに表示できます。

于 2012-11-21T23:18:41.500 に答える