在封裝中使用運算式
運算式是產生單一資料值的符號組合 (識別碼、常值、函數和運算子)。簡單的運算式可以是單一常數、變數或函數。通常運算式都比較複雜,更常使用多個運算子和函數,並參考多個資料行和變數。在 SQL Server 2005 Integration Services (SSIS) 中,運算式可用於定義 CASE 陳述式的條件、建立和更新資料行中的值、指派值到變數、在執行階段更新或擴展屬性、定義優先順序條件約束中的條件約束和提供「For 迴圈」容器所使用的運算式。
Integration Services 中的下列元素可使用運算式:
- 「條件式分割」轉換是以運算式為基礎,實作決策結構以將資料列導向不同的目的地。「條件式分割」轉換中使用的運算式必須評估為 true 或 false。例如,可以將運算式 "Column1 > Column2" 中符合條件的資料列傳送至不同的輸出。
- 「衍生的資料行」轉換會利用透過使用擴展資料流程中新資料行或更新現有資料行之運算式所建立的值。例如,運算式 Column1 + " ABC" 可用於更新值或建立具有串連字串的新值。
- 變數會使用運算式來設定其值。例如,GETDATE() 會將變數值設為目前的日期。
- 優先順序條件約束可使用運算式,指定決定受條件約束的工作或封裝中的容器是否執行的條件。優先順序條件約束中使用的運算式必須評估為 true 或 false。例如,運算式 @A > @B 將兩個使用者自訂變數進行比較,以決定受條件約束的工作是否執行。
- 「For 迴圈」容器可使用運算式建立迴圈結果使用的初始化、評估和累加陳述式。例如,運算式 @Counter = 1 會初始化迴圈計數器。
運算式還可用於更新封裝、容器 (例如「For 迴圈」和「Foreach 迴圈」)、工作、連接管理員、記錄提供者和 Foreach 列舉值的屬性值。例如,使用屬性運算式,可將字串 "Localhost.AdventureWorks" 指派到「執行 SQL」工作的 ConnectionName 屬性。詳細資訊請參閱<在封裝中使用屬性運算式>。
運算式以運算式語言和運算式評估工具為基礎。運算式評估工具會剖析運算式,並判斷運算式是否遵循運算式語言的規則。詳細資訊請參閱<Integration Services 運算式參考>。
運算式產生器位於 [條件式分割轉換編輯器]、[衍生的資料行轉換編輯器] 對話方塊和 [運算式產生器] 對話方塊中,是用於建立運算式的圖形工具。
運算式產生器會提供包含封裝特定之元素的資料夾和包含運算式語言所提供之函數、類型轉換和運算子的資料夾。封裝特定的元素包括系統變數和使用者自訂變數。在 [條件式分割轉換編輯器] 和 [衍生的資料行轉換編輯器] 對話方塊中,還可以檢視資料行。若要建立轉換的運算式,可以將項目從資料夾拖曳至 [條件] 或 [運算式] 資料行,或直接在資料行中鍵入運算式。
附註: |
---|
使用者自訂變數和系統變數的名稱區分大小寫。 |
變數有範圍,並且運算式產生器中的 [Variables] 資料夾只會列出處於範圍中的可用變數。詳細資訊請參閱<Integration Services 變數>。
下列程序描述使用運算式產生器建立運算式的步驟。