2014-10-09 47 views
1

获得数据我有两个数据库A和B 在数据库AI有一个表A1和在数据库BI具有表B1 我在A1以下数据SSIS从不同数据库

ID  | Name | Active 
1  | Alpha  | 1 
2  | Bravo  | 1 
3  | Charlie | 1 
4  | Delta  | 0 
5  | Echo  | 0 

我有继B1数据

ID  |A1ID  | Name 
1  | 1  | Mike 
2  | 1  | November 
3  | 2  | Oscar 
4  | 3  | Romeo 
5  | 4  | Sierra 

,我需要检查什么都在表A1此处(1,2,3) 按照该活动的我得从包含A1ID作为参考表B1数据 所以从表B1我得到的数据在这里(1,2,3,4)记录我怎么能使用SSIS包装

回答

0

我想到两种方法。

,如果你也有不同的服务器第一种方法:

  1. 创建2个连接管理器:一个用于A1和第二为B2。
  2. 把2 OLE DB源组件分成数据流。对于B2源选择B2表,作为用于A1装上去这样的代码:

    SELECT * FROM AS dbo.A1一个 WHERE A.Active = 1 顺序按A.ID

  3. 在两个源下显示高级编辑必须在输出输入特性标签:标记IsSorted = True为OLE DB源输出输出列的的OLE DB源输出为A1酸ce B1列A1ID列必须具有SortKeyPosition = 1

  4. 添加合并加入组件和链接源。打开编辑器并查找是否连接正确数据,并选择显示哪些列

我加组播**只是与**数据浏览器 enter image description here

如果你有第二种方法查看数据同一服务器上的数据:

创建连接管理器。只需添加的OLE DB源,把这段代码里面:

SELECT A.ID, A.Name AS NameA1, B.NAME AS NameB1 
FROM ForTests.dbo.A1 AS A 
INNER JOIN FileSearchTest.dbo.B1 AS B 
    ON A.ID = B.A1ID 
WHERE A.Active = 1 

而且完蛋了。 enter image description here