[SQL SERVER][SSIS]時序容器應用

[SQL SERVER][SSIS]時序容器應用

SSIS中資料交易作業是很稀鬆平常的,如果我們希望每個交易子集都必須完全成功後,

才可真正處理資料庫中的相關資料,那這時我們就可以使用時序容器來達到我們的需求。

「時序」容器上設定交易屬性,定義封裝控制流程子集的交易。

使用這種方式,可以以更細微的層級管理交易。

例如,「時序」容器包括兩項相關的工作,其中一項工作為刪除資料表中的資料,

而另一項工作會將資料插入資料表中,則可設定交易,以確認刪除動作會在插入動作失敗時回復。

 

需求:清空舊資料,新增資料並將結果寄給需求人員。

為了預防交易過程中意外狀況發生,我們利用時序容器來控制流程子集交易失敗時須完全回復。

 

image

Control Flow

 

image image

設定時序容器交易屬性。

 

image

清空資料表。

 

image

新增資料(語法錯誤)。

 

image

Data Flow

 

image

資料型別轉換。

 

image

image

設定一般檔案資料欄位對應。

 

image

image

設定Mail。

 

image

資料表初始資料。

 

第一次執行

image

image

錯誤指出語法不正確。雖然清空資料表階段已成功執行完畢,

但因啟動交易屬性,同時新增資料子集也出現錯誤,

所以資料表相關資料並不會被真正清空。

 

第二次執行(修正上述語法錯誤)

image

image

image

利用SSIS即可很輕鬆完成該需求。

 

參考

時序容器

在封裝中合併交易