SSIS - 来自两个数据库的OleDB源查询在不同的服务器上

时间:2011-04-20 15:04:45

标签: sql sql-server tsql ssis

我正在开发一个SSIS包,它需要根据ServerB上DB表中的数据从ServerA提取数据。我是ServerB上的DBadmin,但对ServerA的访问非常有限。

我需要执行的查询,理想情况下使用OleDB源组件,如下所示:

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

是否可以这样做,还是我需要采取不同的方法?

编辑:我需要每隔十分钟24x7运行一次这个查询,我不想从ServerA中提取数据,因为表中有数百万行,这是一个无法重载的业务关键应用程序的一部分

1 个答案:

答案 0 :(得分:0)

从serverA拉入第三个数据源,从serverB拉入同一个源,然后使用该源应用where子句。

OR,从serverA拉到serverB并在serverB上应用where子句。


回应评论,

OR,从serverB拉到serverA并在serverA上应用where子句。这就是你想要加入的地方,而不是你的SSIS包。

另外,看看你是否可以根据B之外的某些条件限制serverA中的大多数行,或者限制来自serverB的数据量,在转移到SSIS包之前,需要在A上进行粗略切割。


我也想知道他们是否可以为你将serverB链接到serverA ......