SSIS功能體驗(一)、匯入EXCEL檔案
撰文:吳俊毅 時間:2010/02/03 關於SSIS的主題筆者早就躍躍欲試了,只是礙於沒有機會接觸,相信MS SQL 2005的SSIS許多人早已體驗過其強大的功能,與MS SQL 2000的DTS相比強大好幾倍,SSIS加上對.NET Framework平台的支援,指令碼的處理的Script可不像DTS只可以使用Active JScript/VBScript做為主要語言,SSIS可以支援以C#來撰寫指令碼的處理。筆者因為工作的關係需要將EXCEL檔案大量且批次的匯入到資料庫中,因為EXCEL格式為固定,而且每天都需要匯入,如果要寫程式匯入當然也可以,但未免過於麻煩,因為要寫的程式太多了,能不要寫當然就不要寫!所以筆者就想到SSIS這個強大的功能。OK我們一步步來進行! 首先需要使用VS 2008開一個新的Integration Services 專案,如下圖(屬於商業智慧專案): 新的專案預設會切在控制流程的畫面,如下圖: 對SSIS而言所有的作業基礎即是控制流程,(眼尖的讀者會發現當切換控制流程與資料流程頁籤時左邊TOOLBAR的元件是不一樣的!)接下來拖曳一個資料流程工作至畫面中,並在該資料流程工作上點選滑鼠右鍵選擇編輯後畫面會自動切到資料流程頁籤,然後將"Excel來源" 元件拖曳至畫面中,畫面如下: 接著在Excel來源點選右鍵編輯會切到EXECL來源編輯視窗,並新增一個Excel連接管理員,再設定Excel的檔案路徑,如下圖設定畫面: 以上動作都完成且確認無誤後將Excel來源編輯器的資料存取模式設定為SQL指令方式,點選建立查詢按鈕可以SQL Statement方式將Sheet1$的資料Select進來,對SSIS而言EXCEL的Sheet即是一個Table,這個概念不是到了SQL 2005才有的,早在DTS的時代就有這個概念,因為一個EXCEL檔案通常有三個Sheet,所以在這裡會看見三個Table,那麼因為筆者的EXCEL中只有Sheet1有資料,所以只加入Sheet1$就可以了!如下圖: 確定後我們可以Select看看,Sheet1$的資料會秀在下面: 決定好SQL按下確定後請預先在資料庫中建立一個Table以便匯入使用 CREATE TABLE [dbo].[Tb_Sales...