什麼是 DTS?
Data Transformation Services (DTS) 是 SQL Server 2000 內建的 ETL 工具集,用於異構資料源間的資料抽取、轉換、載入 (ETL)。支援 OLE DB / ODBC 連接,涵蓋 SQL Server、Oracle、Access、Excel、文字檔等。
核心概念:封裝
- 一個 DTS 解決方案 = 一個或多個封裝
- 每個封裝包含:
- 任務:定義工作項目(資料轉換、執行 SQL、檔案傳輸等)
- 工作流:任務執行順序與條件邏輯
- 連接:資料源與目的地連接定義
- 全域變數:跨任務傳遞參數
- 記錄/交易控制:稽核與一致性保障
主要工具
| 工具 | 用途 |
| 匯入/匯出精靈 | 快速建立簡單封裝,支援基本資料移轉 |
| DTS 設計師 | 圖形化介面建立複雜封裝,支援拖拉元件、設定工作流 |
| DTSRun / DTSRunUI | 命令列/圖形化執行現有封裝,支援全域變數傳遞 |
| SQL Server Agent | 排程封裝自動執行 |
進階開發可使用 DTS 物件模型(COM)以 VB/VBScript/C++ 程式化建立封裝、自訂任務與轉換。
SQL Server 2000 DTS 新功能亮點
- 新任務類型:FTP 任務、執行封裝任務、動態屬性任務、訊息佇列任務
- 增強記錄功能:完整執行歷程、每任務每步驟詳細資訊、錯誤資料列導向異常檔案
- 封裝另存為 Visual Basic 檔案:利於版控與部署
- 多階段資料泵:高階使用者可自訂各階段轉換邏輯
- 全域變數作為查詢參數:動態化查詢條件
- 參數化來源查詢:轉換任務與執行 SQL 任務支援參數化
- 父子封裝全域變數傳遞:執行封裝任務可將父封裝變數動態指派給子封裝
DTS 設計師介面操作要領
- 工作區:拖拉連接與任務圖示
- 工具列:封裝元件(連接、任務、轉換)
- 選單:工作流與封裝管理命令
- 設定任務間工作流條件約束:成功/失敗/完成箭頭、條件運算式
任務分類總覽
資料轉換類
- 轉換資料任務:欄位級對應與轉換
- 資料驅動查詢任務:逐列執行 SQL/預存程序
- 平行資料泵任務:程式化使用,支援階層式資料列集
複製與管理類
- 大量插入任務:高速載入文字檔到資料表
- 執行 SQL 任務:執行 T-SQL、儲存查詢結果
- 複製 SQL Server 物件任務:跨實例複製資料/結構定義
- 傳輸資料庫/錯誤訊息/登入/作業/主資料庫預存程序任務
作業執行類
- ActiveX Script 任務:自訂邏輯(VBScript/JScript)
- 動態屬性任務:執行期從外部來源更新封裝屬性
- 執行封裝任務:巢狀封裝呼叫
- 執行處理序任務:呼叫 .exe/.bat
- FTP 任務:遠端檔案下載/上傳
- 訊息佇列任務:MSMQ 收發訊息
- 傳送郵件任務
- 分析服務處理/資料探勘任務:需安裝 Analysis Services
下一篇預告
下篇將深入實作:建立複雜工作流封裝、錯誤處理模式、動態屬性應用、效能調校與部署最佳實務。
- 上一篇文章: SQL Server 2000 DTS (下):資料泵架構、查詢設計器、轉換類型、錯誤記錄、多階段資料泵完整圖解
- 下一篇文章: SQL Server 2000 架構解析:伺服器組件、用戶端工具與版本選擇指南
Copyright ©
程式碼之家 All Rights Reserved