For 迴圈容器會在封裝中定義重複的控制流程。 循環實作類似於程式設計語言中的 For 循環結構。 在迴圈的每個重複中,For 迴圈容器會評估表達式,並重複其工作流程,直到表達式評估為 False為止。
For 迴圈容器會使用下列元素來定義迴圈:
選擇性初始化表達式,會將值指派給迴圈計數器。
評估表達式,其中包含用來測試迴圈是否應該停止或繼續的表達式。
可選擇的迭代表達式,用於增加或減少迴圈計數器。
下圖顯示一個 For 迴圈容器,其中包含一項寄送郵件任務。 如果初始化表達式為 @Counter = 0,則評估表達式為 @Counter < 4,而反覆項目表達式為 @Counter = @Counter + 1,迴圈會重複四次,並傳送四則電子郵件訊息。
表達式必須是有效的 SQL Server Integration Services 表達式。
若要建立初始化和指派表達式,您可以使用指派運算符 (=)。 Integration Services 運算式文法不支援此運算元,而且只能由 For 迴圈容器中的初始化和指派表達式類型使用。 任何使用指派運算符的表達式都必須具有 語法 @Var = <expression>,其中 Var 是運行時間變數,而 <expression> 是遵循 SSIS 運算式語法規則的表達式。 表達式可以包含變數、常值,以及 SSIS 運算式文法支援的任何運算元和函式。 表達式必須評估為可以轉換成變數數據類型的數據類型。
For 迴圈容器只能有一個評估表達式。 這表示 For 迴圈容器會執行其所有控制流程元素的相同次數。 因為 For 迴圈容器可以包含其他 For 迴圈容器,所以您可以在套件中建置巢狀循環並實作複雜的迴圈。
您可以在 For 迴圈容器上設定交易屬性,以定義封裝控制流程子集的交易。 如此一來,您就可以在更細微的層級管理交易。 例如,如果 For 迴圈容器重複一個控制流程來更新數據表中的數據多次,您可以將 For 迴圈及其控制流程設定為使用交易,以確保如果不是所有數據都成功更新,則不會更新任何數據。 如需詳細資訊,請參閱 Integration Services 交易。
For 迴圈容器的設定
您可以透過 SSIS 設計師或以程式設計方式設定屬性。
如需您可以在 SSIS 設計工具中設定之屬性的詳細資訊,請按下列其中一個主題:
如需以程式設計方式設定這些屬性的詳細資訊,請參閱開發人員指南中的 T:Microsoft.SqlServer.Dts.Runtime.ForLoop 類別檔。
相關工作
如需如何設定 For 迴圈容器的資訊,請參閱下列主題。