SSIS-For迴圈容器使用介紹

SSIS-For迴圈容器使用介紹

在sssis中,我們如果有些處理無法在”資料流程工作”中做,但又需要使用迴圈的方式處理資料,該怎麼做呢?

接下來就介紹如何使用For迴圈容器

範例說明:使用For迴圈容器來呈現在ssis中也可以debug變值的值

先拉出一個For迴圈容器

clip_image001

接下來在設定一個變數:例如 i  <--寫程式的人最常用的一個變數名稱,…

clip_image002

接下來因為我們要利用ssis的debug方式,所以我們要在變數變化時,keep住變數現在的值是多少

所以要把一個功能選項打開,請照下圖開啟

clip_image003

接下來在for迴圈容器中按滑鼠右鍵選編輯

initexpresion中輸入@i=0,這裡指的是初始值要從多少開始,我們從0開始

evalexpression中輸入@i<3,這裡指的是結束值,我們設小於3,所以結果只有跑到2就結束了

assignexpression中輸入@i=@i+1,這是指的是增量值,每次增加多少,我們設1

clip_image004

接下來在for迴圈容器上按滑鼠右鍵選擇編輯中斷點

clip_image005

開啟設定中斷點的視窗後,將"在迴圈的每一次反覆運算開始時中斷"勾圈起來,以後如果測試完成後,請記得把勾選拿掉

不然會每次都中斷

clip_image006

好了,接下來我們執行看看吧

執行後,會看到如下畫面,”for迴圈容器”會呈現黃色,代表執行中

我們把監控視窗切換到區域變數視窗,會看到variables,這是指的是目前在這個dts中所有的變數目前的狀態值

System開頭的指的是系統變數

使用者開頭的指的是你建立的變數

clip_image007

現在看到的使用者::i這個變數的值是0,我們再按一次F5

使用者::i這個變數的值就變成1了

clip_image008

跑完3次後的畫面如下,變成綠色表示成功做完了

clip_image009

結論

使用for迴圈可以可以協助我們處理一些外部資料的部份,例如批次產生日期,或用在debug資料值是否正確的時候,都可以用

提供給各位參考,有任何意見的話,可以留下迴響討論哦..