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

數據轉換服務基本概念

編輯:關於SqlServer

在使用SQL Server 的過程,中由於經常需要從多個不同地點將數據集中起來或向多個地點復制數據,所以數據的導出,導入是極為常見的操作.我們可以使用BCP 命令來完成這一任務,但是記住 BCP 的命令格式是一件令人頭痛的苦差事,雖然你可以查看幫助文件,所以我們需要功能強大操作簡單的工具來完成這一任務,數據轉換服務DTS 提供了這種支持。因此本章將介紹DTS 的基本情況、討論DTS 的各個構建組件以及如何完成數據轉換服務。

18.1.1 數據轉換服務簡介
為了支持企業決策,許多組織都需將數據集中起來進行分析。但是通常數據總是以不同的格式存儲在不同的地方。有的可能是文本文件,有的雖然具有表結構但不屬於同一種數據源,這些情況極大地妨礙數據的集中處理。SQL Server 為我們提供了令人欣慰的組件,即Data Transformation Services( DTS)。 DTS 本身包含多個工具並提供了接口來實現在任何支持OLE DB 的數據源間導入、導出或傳遞數據,並使這一工作變得簡單高效。這意味著不僅可以在SQL Server 數據源間進行數據的轉儲,而且可以把Sybase, Oracle, Informix 下的數據傳遞到SQL Server。
利用Data Transformation Services (DTS) 可能在任何OLE DB、 ODBC 驅動程序的數據源或文本文和SQL Server 之間導入、導出或傳遞數據。具體表現在:

  • 數據的導入、導出服務
    通過讀寫數據在不同應用程序間交換數據。例如,可將文本文件或Microsoft Access 數據庫導入到SQL Server, 也可以把數據從SQL Server 導出到任何OLE DB 數據源。
  • 轉換數據
    所謂傳遞是指在數據未到達目標數據源前而對數據采取的系列操作。比如DTS 允許從源數據源的一列或多列計算出新的列值,然後將其存儲在目標數據庫中。
  • 傳遞數據庫對象
    在異構數據源情況下DTS, 的內置工具只能在數據源間傳遞表定義和數據。如果要傳遞其它數據庫對象,如索引、約束、視圖時,必須定義一個任務,從而在目標數據庫上執行那些包含在任務中的SQL 語句,SQL 語句是被用來創建這些數據庫對象的。
18.1.2 DTS 結構
DTS 將數據導入、導出或傳遞定義成可存儲的對象,即包裹或稱為包。每一個包都是包括一個或具有一定順序的多個任務的工作流。每個任務可以將數據從某一數據源拷貝至目標數據源或使用Active 腳本轉換數據或執行SQL 語句或運行外部程序。也可以在SQL Server 數據源間傳遞數據庫對象。
包對象用來創建並存儲步驟,這些步驟定義了一系列任務執行的順序以及執行任務的必要細節。包對象中還包括源列、目標列以及有關在數據傳遞過程中如何操縱數據的信息。
包可以存儲在DTS COM 結構的存儲文件中、msdb 數據庫中、或Microsoft Repository 中。
可以通過以下工具來運行包,它們是:dtsrun 工具,DTS Designer, DTS 的導入、導出向導,SQL Server Agent 來運行規劃作業,使用Execute 方法調用DTS 包對象的COM應用程序。
包是頂層對象,它包含三種底層對象:連接、任務、步驟。

1 連接
連接定義了有關源和目標數據(數據源或文件)的信息這些信息包括數據格式和位置,以及安全認證的密碼。DTS 包可不包含或包含多個連接。使用連接的任務有:
  • DTS Data Pump 任務
  • 執行SQL 任務
  • 數據驅動查詢任務
  • 定制任務
    有三種類型的連接對象
  • 數據源連接
    數據源連接定義了有關源和目標OLE DB 數據源的信息。這些信息包括服務器名稱、數據格式和位置,以及安全認證的密碼。第一個使用連接的任務負責創建該連接。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved