こんにちは私はこれを達成するためのスマートなアイデアを得ようとしています。私はリンクされたサーバー名の完全なリストを含む 'Servers'という列のテーブルT1を持っています。そして、私はこれらのリンクされた各サーバーのいくつかのテーブルを照会し、その結果を使用して、このテーブルのDB_Nmaesという名前の他のカラムを設定します。私は、全体のテーブルT1をループしていると考えると、クエリに各ループ内の動的SQLを構築することができ、このT-SQLは、リンクされたサーバーのクエリ結果を使用してローカルテーブルにデータを入力します
T1
Servers DB_Names Datafile_Size, ….
S1 D1 2M S1 D2 3M S1 D3 5M S2 D1 3M S2 D2 6M . . .
一つの方法のようになる後
理想的には、テーブルを結果対応するリンクされたサーバーを作成し、他のフィールドDB_NamesとDatafile_sizeに挿入します。 しかし、私はその列に多くのリンクされたサーバーの行があるため、これを行うことを避けようとしています。セットベースの操作を使用してこれを達成できる方法はありますか?
ありがとうございました。
'[Servers]'で始まるように '[DB_Names] 'も入力されていますか? – squillman
はい、DB_NAMESとDatafile_sizeはすべてNULLです。すべてのリンクされたサーバー名をデータとして含む[サーバー]列のみがあります。私はS1.sys.master.databasesのようなクエリを各行で実行したいので、探している結果はT1に表示されているようになります。ありがとう – user1238837
もう1つのことは、リストに表示されているデータベースにのみ興味があり、必ずしもそのサーバー上のすべてのデータベースに興味がありますか? – squillman