[SQL SERVER][SSIS] DataCleaning - 比對規則並更新

[SQL SERVER][SSIS] DataCleaning - 比對規則並更新

今天客戶下午提出一個資料更新的需求,我簡單敘述大概如下

需求:更新現有資料庫中所有資料表欄位 name,descript 的內容,相關規則請依 Mapping Table 為基準。

 

當時客戶希望我寫個小AP(而且滿急的...在這行很常聽到~XD),

方便以後他可以透過這小AP來維護相關Table資料更新(因為規則日後可能還會有所改變),

雖然解法有很多種,但我心理覺得使用 SSIS 來處理DC應該是最快的方法,

在和客戶溝通使用 SSIS ETL工具的優勢後(SSIS 處理這樣的需求算是小菜一蝶),

自己花不到10分鐘便完成該需求(設計資料流程及測試),下面自己紀錄單一資料表資料流程。

 

Mapping Table

image

 

目的資料

image

 

需依照Mapping Table所提供的規則,來更新test_A資料表中的兩個欄位(name,description)

 

資料流程(主要就是利用Lookup)

image

 

編輯Lookup

image

快取模式請選擇完整快取,無相符項目請選擇忽略失敗。

 

連接 Mapping Table

image

 

比對設定

image

須注意Lookup是採取完全比對(大小寫、空格..等)。

 

編輯OLE DB

image

基本的 update statement。

 

執行確認

image

 

輕鬆搞定,不用加班~

image

大家有沒有覺得 SSIS 是不是簡單好用阿~