程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL Server 2000的數據轉換服務(上)

SQL Server 2000的數據轉換服務(上)

編輯:關於SqlServer
DTS簡介

  大多數組織都使用多種格式和多個位置來存儲數據。為了支持決策、
改善系統性能或對現有系統進行升級,經常必須將數據從一個數據存儲位
置移動到另一個存儲位置。

  Microsoft SQL Server 2000 數據轉換服務(DTS )提供一組工具,
可以從不同的源將數據抽取、轉換和合並到一個或多個目標位置。借助於
DTS工具,您可以創建適合於您的組織特定需要的自定義移動解決方案,
如以下方案所示:

  您已在較早版本的 SQL Server 或另一平台上部署了一個數據庫應用
程序,如 Microsoft Access.該應用程序的新版本要求 SQL Server 2000,
因此需要您更改數據庫架構並轉換某些數據類型。

  要復制和轉換數據,您可以生成一個 DTS解決方案,該方案可把數據
庫對象從原數據源復制到 SQL Server 2000數據庫中,同時重新映射列並
更改數據類型。可以使用 DTS工具運行此解決方案,或者將該解決方案嵌
入您的應用程序。

  您必須將幾個主要的 Microsoft Excel電子表格合並到 SQL Server
數據庫。幾個部門會在月末創建這些電子表格,但是並沒有設定完成所有
電子表格的時間。

  要合並電子表格,可以生成一個 DTS解決方案,在消息傳送到消息隊
列時運行該解決方案。此消息觸發 DTS從電子表格抽取數據,執行所有定
義的轉換然後將數據加載到 SQL Server 數據庫中。

  您的數據倉庫包含有關業務操作的歷史數據,您使用 Microsoft SQL
Server 2000 分析服務來匯總數據。而該數據倉庫每晚需要從聯機事務處
理(OLTP)數據庫進行更新。OLTP系統每天 24 小時都在運行,所以性能
至關重要。

  您可以生成一個 DTS解決方案,該方案使用文件傳輸協議(FTP )將
數據文件移動到本地驅動器,將數據加載到一個實際的表中,然後使用分
析服務對數據進行合計。可以安排每晚運行 DTS解決方案,還可以使用新
的 DTS記錄選項來跟蹤該進程的進行時間,從而可以分析不同時間段內的
性能。

什麼是 DTS?

  DTS是一組工具,用於一個或多個數據源(如Microsoft SQL Server、
Microsoft Excel 或 Microsoft Access )間導入、導出和轉換各種數據。
通過 OLE DB (一種數據訪問的開放式標准)提供連接,通過用於 ODBC
的 OLE DB 提供程序來支持 ODBC (開放式數據庫連接)數據源。

  可以將 DTS解決方案創建為一個或多個軟件包。每個軟件包可包含一
組已安排好的任務,它們定義要執行的工作、對數據和對象的轉換、定義
任務執行的工作流約束條件以及數據源和目標間的連接方式。DTS 軟件包
還提供一些服務,如記錄軟件包執行詳細情況、控制事務和處理全局變量。

以下工具可用於創建和執行 DTS 軟件包:
●導入/導出向導用於生成相對簡單的 DTS 軟件包,並支持數據移植和簡
 單轉換。
●DTS設計器以圖形方式來實現 DTS 對象模型,可用於創建具有一系列功
 能的 DTS 軟件包。
●DTSRun 是用於執行現有 DTS 軟件包的命令提示實用程序。
●DTSRunUI 是 DTSRun 的圖形界面,可以傳遞全局變量以及生成命令行。
●SQLAgent 不是 DTS 應用程序,DTS 將其用於安排軟件包的執行。

  使用 DTS對象模型還可以用編程方式創建和運行軟件包,生成自定義
任務和自定義轉換。



DTS 的新功能

Microsoft SQL Server 2000 中加入了多種 DTS 增強功能和新功能:
●新的 DTS 任務包括 FTP 任務、執行軟件包任務、動態屬性任務和信息
 隊列任務。
●增強的記錄功能可以保存每個軟件包的執行信息,從而為您保留一個完
 整的執行歷史記錄,並可以查看每一任務的每個進程的信息。可以生成
 異常情況文件,文件中包含因錯誤而無法處理的數據行。
●您可以將 DTS 軟件包另存為 Microsoft Visual Basic? 文件。
●新的多階段數據泵允許高級用戶自定義不同階段的數據轉換操作。還可
 以將全局變量用作查詢的輸入參數。
●您可以在 DTS 轉換任務和執行 SQL 任務時使用參數化源查詢。
●可以使用執行軟件包任務將全局變量的值從父軟件包動態分配到子軟件
 包。

使用 DTS 設計器

  DTS 設計器以圖形方式實現 DTS對象模型,使您可以用圖形方式創建
DTS 軟件包。您可以使用 DTS設計器執行以下任務:
●創建包含一個或多個步驟的的簡單軟件包。
●創建包括復雜工作流的軟件包,這些工作流包括多個步驟,而這些步驟
 使用條件邏輯、事件驅動代碼或與數據源的多種連接。
●編輯現有軟件包。
  DTS 設計器界面包括一個工作區(用於生成軟件包)、幾個工具欄
(其中包含可拖動到設計工作表上的軟件包元素)以及幾個菜單(其中包
含工作流和軟件包管理命令)。

            圖 1. DTS 設計器界面

  通過將連接和任務拖動到設計工作表,然後指定工作流的執行順序,
可以方便地使用 DTS設計器來生成功能強大的 DTS軟件包。以下各部分將
對任務、工作流、連接和轉換進行定義,並闡釋使用 DTS設計器實施 DTS
解決方案的方便性。

任務:定義軟件包中的步驟

  一個 DTS軟件包通常包括一個或多個任務。每個任務定義一個在軟件
包執行期間可能要執行的工作項。可以使用這些任務進行以下操作:
● 轉換數據
轉換數據任務 用於在源和目標間移動數據,可以選擇對數據應用列一級的轉換。
數據驅動的查詢任務 用於對數據執行靈活的基於 SQL 事務的操作,包括存儲過程和 INSERT、UPDATE 或 DELETE 語句。
並行數據泵任務1 只可按編程方式使用,並行數據泵任務執行的功能與轉換數據和數據驅動的查詢任務相同,但它支持
OLE DB 2.5 或更高版本所定義的分層次的行集合。


● 復制和管理數據
批量插入任務 用於快速將大量數據加載到 SQL Server 表或視圖中。
執行 SQL 任務 用於在軟件包執行期間運行 SQL 語句。執行 SQL 任務還可以保存作為查詢結果的數據。
復制 SQL Server 對象任務 用於將 SQL Server 對象從一個 SQL Server 或其實例復制到另一個 SOL Server 或實例。可以復制對象(如:數據和表)以及對象(如:視圖和存儲過程)的定義。 傳輸數據庫任務1 用於將 SQL Server 數據庫從 SQL Server 7.0 版本或 SQL Server 2000 的一個實例移動或復制到 SQL Server 2000 的一個實例中。 傳輸錯誤消息任務1 用於將針對用戶的錯誤消息(通過 sp_addmessage 系統存儲過程創建)從 SQL Server 7.0 或 SQL Server 2000 的一個實例復制到 SQL Server 2000 的一個實例中。
傳輸登錄任務 1 用於將登錄信息從 SQL Server 7.0 或 SQL Server 2000 的一個實例復制到 SQL Server 2000 的一個實例中。
傳輸作業任務1 用於將作業從 SQL Server 7.0 或 SQL Server 200

0 的一個實例復制到 SQL Server 2000 的一個實例中。
傳輸主存儲過程任務 1 用於將存儲過程從 SQL Server 7.0 或 SQL Server 2000 的一個實例的主數據庫復制到 SQL Server 2000 的一個實例的主數據庫。


● 將任務作為軟件包中的作業運行
ActiveX 腳本任務 用於編寫代碼以執行在其它 DTS 任務中無法執行的功能。
動態屬性任務1 用於在軟件包運行時從 DTS 軟件包以外的源檢索值,並將這些值分配給選定的軟件包屬性。
執行軟件包任務1 用於運行軟件包內其它的 DTS 軟件包。
執行進程任務 用於運行可執行程序或批處理文件。
文件傳輸協議 (FTP) 任務1 用於從遠程服務器或 Internet 下載數據文件。
消息隊列任務1 用於從 Microsoft 消息隊列發送和接收消息。
發送郵件任務 用於發送電子郵件消息。
分析服務處理任務2 用於對 SQL Server 2000 分析服務中定義的一個或多個對象執行處理。
數據挖掘任務1,2 用於從 SQL Server 2000 分析服務中定義的數據挖掘模式對象中創建謂詞查詢或輸出表。

1 SQL Server 2000 中的新功能。
2 只在安裝了 SQL Server 2000 分析服務的前提下可用。





   

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved