2014-10-09 83 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