1介紹元件
1).foreach loop container
2).execute sql task
2.功能介紹
1).foreach loop container 是乙個迴圈遍歷的容器,類似於c#中的foreach
2).execute sql task 就是一條sql命令。
3.使用操作
foreach loop container。首先場景是這樣的,我有一大堆sql指令碼在乙個資料夾裡面,
我想將這些指令碼執行到資料庫上。這個場景是我們做系統開發的時候遇到一些常見的問題。解決
方法有多種,我這裡主要來講用ssis怎麼實現。
首先建立乙個工程,將foreach loop container組建拽上。我的本地有乙個sql資料夾,裡面有三個
指令碼,分別是建立上個表的指令碼。我sqlserver2008本地有乙個資料庫ssistestingbase,裡面沒有
使用者建立的表。
step1.選擇foreach loop container
step2.編輯->集合->資料夾
我們將選擇有sql指令碼的資料夾,後面的files,我們填寫*.sql
這個意思只要是學計算機的都非常明白是什麼意思。
後面的選項是返回乙個檔案的全部路徑還是名稱等,同時還可以遍歷子資料夾。
step3.我們要新增乙個execute sql task 到foreach容器裡面,同時要設定乙個變數,來
儲存每次容器讀取的sql指令碼路徑,然後將sql指令碼路徑給execute sql task 執行。
step4.execute sql task 執行的屬性設定
首先要設定連線,就是執行到那個資料庫。
其次要執行的型別,是變數執行還是直接指令碼。
但是我們foreach讀出來的是乙個檔案路徑,那怎麼得到
路徑的檔案呢?
我們選擇型別的時候,肯定要選擇file connection,這樣就會彈出乙個
框,要你選擇是建立還是已經存在的檔案,我們這裡當然要選擇建立。
然後選擇連線管理器,設定檔案的連線變數,也就是foreach讀出的檔案路徑。
選擇sqlfile,右鍵屬性,選擇expressions,選擇connectionstring
選擇按鈕來選擇變數
將sql變數拽到expression,點選ok完成。
到目前,我們的工程就完成,測試能否執行。
SSIS 查詢 元件
通過ssis的 查詢 元件進行不同資料來源之間資料的合併操作 為了協助開發還原生產環境中的某些bug,需要將將生產環境的某些特定表資料匯入到測試環境做測試,之前一直都是暴力地truncate測試環境的表,然後用ssis將生產環境對應的整張表資料匯入測試環境,簡便快捷 後來開發提出來,保留測試環境已有...
SSIS 調式指令碼元件
ssis比dts的日誌架構更加強大,你再也沒有必要寫入乙個msgboxes來獲得你所需要的日誌資訊 因為你的指令碼元件是繼承於乙個有log方法的script ponent元件,這個方法允許你返回乙個訊息到ssis包的日誌中,它會觸發script ponentlogentry的呼叫,例如下面 vb d...
SSIS元件轉換 查詢轉換
查詢轉換功能和模糊查詢轉換功能類似。只不過查詢轉換相比模糊轉換容易的多。相當於模糊查詢轉換中的完全匹配設定,查詢轉換包含以下屬性 在常規選項卡中我們可以看到如圖的一些設定 圖中的具體含義如下 屬性說明 完全快取 在執行查詢轉換前,生成引用資料集並將其載入到快取中。部分快取 在執行查詢轉換的過程中生成...