SQL Server 2000的資料轉換服務(3)

2021-08-22 03:50:24 字數 3379 閱讀 2289

資料幫浦:轉換資料

dts 資料幫浦是乙個 dts物件,它驅動資料的匯入、匯出和轉換操作。

在執行資料轉換、資料驅動查詢和並行資料幫浦任務期間將使用資料幫浦。執

行這些任務的過程是:在源和目標連線上建立行集合,然後建立資料幫浦實

例在源和目標間移動這些行。在複製每一行時,將進行轉換操作。

下圖中,在第二個步驟中,轉換資料任務在 access db任務和 sql

production db任務之間進行。轉換資料任務用連線間的灰色箭頭表示。

要定義從源連線收集的資料,可以生成乙個轉換任務的查詢。dts 支

持引數化查詢,引數化查詢允許在執行查詢時定義查詢值。

可以將查詢鍵入任務的「屬性」對話方塊,也可以使用資料轉換服務查

詢設計器,它是乙個用圖形化方式生成 dts任務查詢的工具。下圖中,使

用查詢設計器來生成乙個查詢,該查詢聯接 pubs 資料庫中的三個表。

在轉換任務中,還可以定義要對資料進行的更改。下表說明 dts提供

的內建轉換。

轉換 說明

複製列 用於在不應用任何轉換的情況下將資料直接從源列複製到目標列。

activex 指令碼 用於生成自定義轉換。請注意,因為轉換將逐行進行,activex 指令碼可能影響 dts 軟體包的執行速度。

datetime 字串 用於將源列中的日期或時間轉換為目標列中的另一種格式。

小寫字串 用於將源列轉換為小寫字元形式,如需要,將其轉換為目標資料型別。

大寫字串 用於將源列轉換為全大寫字元形式,如需要,將其轉換為目標資料型別。

中間字串 用於從源列抽取子字串,對其進行轉換後將結果複製到目標列。

修剪字串 用於刪除源列中字串的前導空格、尾隨空格和嵌入空格,然後將結果複製到目標列。

讀取檔案 用於開啟檔案內容(檔名稱在源列中指定),然後將內容複製到目標列。

寫入檔案 用於將源列(資料列)的內容複製到乙個檔案中,該檔案的路徑由第二個源列(檔案名列)指定。

還可以用程式設計方式建立自己的自定義轉換。生成自定義轉換最快速的

方式是使用活動模板庫(atl )自定義轉換模板,sql server 2000 dts

樣本程式中包括該模板。

資料幫浦錯誤記錄

sql server 2000 中提供了一種記錄轉換錯誤的新方法。可以定義三

種異常情況記錄檔案來記錄軟體包執行期間的情況:錯誤文字檔案、源錯

誤行檔案和目標錯誤行檔案。

●一般錯誤資訊將寫入錯誤文字檔案中。

●如果轉換失敗,源行出現錯誤,該行將寫入源錯誤行檔案。

●如果插入失敗,目標行出現錯誤,該行將寫入目標錯誤行檔案。

在轉換資料的任務中將定義異常情況日誌檔案。每個轉換任務都有自

己的日誌檔案。

資料幫浦階段

預設情況下,資料幫浦有乙個階段,即行轉換。該階段是在未選擇階段

的情況下,在轉換資料任務、資料驅動查詢任務和並行資料幫浦任務中對映

列一級的轉換時配置的。

多個資料幫浦階段是 sql server 2000中新增的。通過在 sql server

企業管理器中選擇多階段資料幫浦選項,在資料幫浦操作過程中的不同階段都

可以訪問資料幫浦並新增功能。

將資料行從源複製到目標時,資料幫浦將按照下圖中所顯示的基本程序

進行操作。

資料幫浦處理完最後一行資料後,任務結束,資料幫浦操作終止。

如果高階使用者要向軟體包新增功能,以便軟體包能支援任何資料幫浦階

段,可以執行以下操作:

●為每個要自定義的資料幫浦階段編寫乙個 activex 指令碼階段函式。如果

使用 activex 指令碼函式來自定義資料幫浦階段,不需要該軟體包以外的

其它任何**。

●使用 microsoft visual c++? 建立 com 物件來自定義所選的資料幫浦階

段。在該軟體包之外開發此程式,在執行轉換過程中每個所選的階段時

將呼叫該程式。訪問資料幫浦階段的 activex 指令碼方法中每個所選階段

都使用不同的函式和輸入點;而這種方法則不同,它在資料幫浦任務執行

期間提供乙個單一輸入點,該輸入點將被多個資料幫浦階段呼叫。

儲存 dts 軟體包的選項

以下選項可用於儲存 dts 軟體包:

●microsoft sql server

如果要將軟體包儲存到網路中 sql server 的任意例項上,該選項將

dts 軟體包儲存到 microsoft sql server ,保留乙個便於使用的這些軟

件包的清單,並在軟體包開發程序中新增和刪除軟體包版本。

●sql server 2000 元資料服務

如果準備跟蹤軟體包版本、元資料和資料系列資訊,該選項將 dts軟

件包儲存到元資料服務。

●結構化儲存檔案

如希望在網路間複製、移動和傳送軟體包而不必將其儲存在microsoft

sql server資料庫中,該選項將 dts軟體包儲存到結構化儲存檔案。

●microsoft visual basic

如果要將 dts軟體包合併到 visual basic 程式中或將其用作 dts應

用程式開發的原型,該選項將通過 dts設計器或 dts匯入/ 匯出嚮導所創

建的 dts軟體包儲存到 microsoft visual basic 檔案。

dts 作為應用程式開發平台

dts 設計器為資料移動任務提供了多種解決方案。因為提供通過程式設計

方式訪問 dts物件模型的功能,dts 擴充套件了可用的解決方案的數目。使用

microsoft visual basic、microsoft visual c++或任何其它支援 com的

應用程式開發系統,都可以使用圖形化工具所不支援的功能開發出適合於

您的環境的自定義 dts解決方案。

dts 為開發人員提供多種不同方式的支援:

●生成軟體包

無需使用 dts設計器或 dts匯入/ 匯出嚮導,您就可以開發極為複雜

的軟體包,並可訪問物件模型中的全套功能。

●擴充套件軟體包

通過構建自定義任務和轉換,可以新增一些適用於您的業務並可在 dts

內重複使用的新功能。

●執行程式包

並非一定要使用所提供的工具來執行 dts軟體包,可以用程式設計方式執

行dts軟體包並通過 com事件顯示進度,並允許構建嵌入的或自定義的dts

執行環境。

樣本dts程式有助於了解dts程式設計的入門知識。該樣本可與sql server

2000一起安裝。

如果開發 dts應用程式,可以重新分發 dts檔案。有關詳細資訊,請

參閱 sql server 2000光碟上的 redist.txt。

XP怎樣安裝SQL Server 2000資料庫

sql server 2000資料庫應用非常廣泛,但是在安裝的時候常常會遇到很多問題,下面就以 形式分步驟講解如何在windows xp中安裝sql server 2000資料庫。首先在網上 好sql server 2000安裝包,四合一版本或者個人版都可以。解壓後雙擊autorun.exe,開啟s...

SQLSERVER2000技術規格

sqlserver2000技術規格 系統技術規格 每個伺服器最多可以允許16個sqlserver例項 每個例項可擁有 2147483467 個鎖 資料庫技術規格 sqlserver的資料庫大小1048516tb 每個資料庫可擁有的檔案組數32767 每個資料庫可擁有的檔案組數256 檔案大小 資料檔...

SQLSERVER2000啟動失敗

服務管理器中啟動sqlserver服務 彈出視窗的錯誤資訊是 本地計算機上的mssqlserver服務啟動後又停止了。一些服務自動停止,如果它們沒有什麼可做的,例如 效能日誌和警報 服務 1 解決方法 調整系統時間到你上一次能夠正常啟動的時間,啟動sqlserver服務,成功後,然後再把時間調回來。...