2011-04-20 129 views
0

我正在開發一個SSIS包,它需要根據ServerB上的數據庫表中的數據從ServerA中提取數據。我是ServerB上的DBadmin,但對ServerA的訪問非常有限。SSIS - 來自兩個數據庫在不同服務器上的OleDB源查詢

我需要執行,最理想的是採用一個OLEDB源組件,該查詢是這樣的:

SELECT 
    Blah 
FROM ServerA.Database1.dbo.TableA 
WHERE Something IN (SELECT foo FROM ServerB.Database2.dbo.TableB) 

是否有可能做到這一點,或者我需要採取不同的方法?

編輯:我需要運行此查詢每十分鐘24x7,並且我不想從ServerA拉數據,因爲表中有數百萬行,這是不能成爲業務關鍵應用程序的一部分超載。

回答

0

將serverA拉入第三個數據源,從serverB拉入同一個源,然後使用該源應用where子句。

或者,從serverA拉到serverB並在serverB上應用where子句。


對此發表評論,

OR,從serverB上拉至ServerA和serverA上應用您的where子句。這確實是你想要加入的地方,而不是你的SSIS包。

此外,請參閱您是否可以基於B之外的某些條件來限制serverA中的大部分行,或者限制從A轉移到SSIS包之前需要存在於A上的數據量。


我也想知道,如果他們能爲你鏈接到serverB上... serverA的

+0

我需要運行此查詢每隔十分鐘全天候,我不想拉從服務器A的數據因爲表中有數百萬行,這是不能超載的業務關鍵型應用程序的一部分。 理想情況下,如果可能的話,我想盡一切努力做到一切順利。 – 2011-04-20 15:17:38

+0

鏈接服務器完成了這項工作,謝謝Beth! – 2011-05-03 09:55:16

相關問題