數據流任務主要用於運行數據流以提取、轉換、加載源數據。一個包中可以有多個數據流任務,也可以包含零個數據流任務。下面關系圖顯示含有一個數據流任務的包:
了解數據流任務后,我們就簡要的學習一下如何創建數據流任務。
- 在工具箱中雙擊數據流任務控件或則將其拖放到控制流頁面中。如圖:
你可以根據需求來修改數據流任務的屬性。
2. 單擊數據流選項卡,從工具箱中拖放一個OLE DB Source.命名為Products。右擊選擇編輯進行配置。如圖所示。
其中sql語句的問號表示通過變量傳遞的參數值。單擊參數按鈕將問號映射到創建的變量。如圖:
你也可以通過變量屬性的下拉框中選擇新建變量選項創建新的變量。然后單擊確定按鈕回到父選項框,再然后單擊確定按鈕
3. 在工具箱將Lookup 查找控件拖放到數據流中,通過從數據源拖動綠色箭頭到該轉換,將Products源和Lookup轉換相連接。將Lookup轉換命名為Find Model name。然后雙擊該控件,做如下配置:
3.1 常規選項卡配置如下:
3.2 連接配置如下
3.3 列配置如下
3.4 高級配置如下
如果在常規選項卡中選擇完全緩存模式,則該選項卡不能使用。
3.5 錯誤輸出配置如下
這樣一個完整的Lookup轉換就配置結束。這個已完成的配置的轉換現在的做法是,試圖根據數據源中的ProductModelID匹配表ProductModel。如果無匹配的行,就會發生錯誤,不過,因為已經配置該轉換忽略這一錯誤,因此如果沒有找到匹配的。ModelName列將包含Null值。
4. 將一個派生列和行計數控件拖放到數據流中,分別命名為 Assign Default Values And Prie、No Mapping Count,並將Lookup轉換的輸出連接到該派生列行計數控件。如下圖:
打開派生列的編輯框。配置如下信息
配置行計數信息如下
5.經過對源數據的轉換后,將這些數據加載到目標數據中。可以將行計數拖放到設計窗格。連接派生列到行計數,將行計數命名為Mapping Count。雙擊它並配置如下信息:
將組建選項卡中的VariableName屬性設為IntCount,當然這個變量事先要在變量工具箱中設計好。
- 在工具箱中的數據流目標卡中,托動一個平面文件目標。命名為Partner Extract。右擊單擊編輯,選擇新建按鈕,彈出對話框
然后單擊確定按鈕,彈出下面的對話框
剩下的配置,按連接管理器配置方式進行配置。在這我們是將轉換后的數據輸出到:
E:\BI資料\SSISETLDemo\partnerextract.txt 中
到此一個完整的數據流任務就建立完成。整體流程如下
運行該包。得到如下信息