5

SQLの実行タスクに2つの異なる接続マネージャーを表示させることはできますか?たとえば、ServerB/DatabaseBに対してクエリを実行するServerA/DatabaseAからのデータが必要です。だから今私はクエリを書いて両方のサーバーからデータを取得する必要があります。現在、2台のサーバーはリンクサーバーではありません。必ずしもそうではありません。

これも可能ですか、教えてください。

4

2 に答える 2

1

私は以前にリンクされたサーバーの不足を回避する方法を見つけなければなりませんでした、そして私はこのようなことをしました-それを試してみてください:

if object_id('tempdb..#mytemptable') is not null begin drop table #mytemptable end
select * into #mytemptable
from openrowset('SQLNCLI10','Server=TheOtherServersName;Trusted_Connection=yes;','SELECT * FROM FullyQualifiedName.dbo.MyTable')
/* Now use the temptable created on this server to do your join/subquery on whatever */
select * from MyOtherTable a
join #mytemptable b on a.id = b.id

乾杯!

于 2013-02-13T21:05:47.253 に答える
1

との個別のデータフローソースタスクを含むデータフロータスクを追加しServer AますServer B。次に、適切なデータフロー変換タスクを使用して結果を結合します。

例として、このデータフローは、Flat File Sourceタスクを取得OLEDB Sourceし、結果を並べ替えてから、結果にMerge Joinタスクを使用します。実装には2つOLEDB Sourcesまたは(ODBC、ADO NETなど)が必要なようです。

リンクサーバーを構成したり、SQL ServerデータソースをOPENROWSET有効にしたりする必要がないため、リンクサーバーまたはでこの方法が好きです。Adhoc Distributed Queries

SSISデータフロー

于 2013-02-13T21:17:26.433 に答える