程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

編輯:DB2教程

簡介

在本文中,您將使用 IBM® WebSphere® Transformation Extender (TX) 資源適配器檢索並路由數據。適配器提供對數據庫、文件、消息傳遞系統、企業應用程序和其他數據源和目標的訪問。本文主要介紹其中一個資源適配器 Database Adapter,並同時展示如何使用 WebSphere TX Design Studio 和 Database Interface Designer。

先決條件

本文針對 WebSphere TX 初級和中級用戶。您應該已經安裝了以下軟件:

WebSphere TX V8.2

DB2

在本文結尾處,您可以 下載 一個名為 SchemaQuerIEs.zip 的文件,該文件包含創建本文使用的樣例 DB2 數據庫的命令。

1. 連接到數據庫

開始之前,在一個 DB2 命令服務器上執行 SchemaQuerIEs.zip 文件中的命令。執行這些命令將在 DB2 中創建一個名為 ADMINREG 的數據庫,該數據庫帶有表 User、 UserGroup 和 Group。類型樹是定義輸入和輸出數據的格式的數據定義文件。由於輸入數據從 ADMINREG 中的 User 表獲取,因此需要一個定義該表中的數據的類型樹。類型樹可以從 Database Interface Designer 中的數據庫、查詢、存儲過程或視圖自動生成。我們將對輸入和輸出使用相同的類型樹。

1.1. 測試到現有數據庫的連接

打開 Database Interface Designer:Start => WebSphere Transformation Extender V8.2 => Design Studio => Database Interface Designer。

右鍵單擊 Database Interface Designer 導航器中的 Database/Query Files,選擇 New Database/Query File。將其命名為 Database_QueryFile1。

右鍵單擊 Databases 並選擇 New。

在 Database Definition 對話框中,輸入 ADMINREG 作為數據庫名。

在 Adapter 中,選擇 DB2 作為 database Type,選擇 Microsoft Windows 作為 Platform。WebSphere TX 提供幾個數據庫適配器,包括 Oracle、MS SQL Server、Sybase、Informix 等。在本文中,您將使用 DB2 數據庫適配器。

圖 1. 選擇數據庫適配器

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

擴展 Data Source 選項。

Database interface Designer 選項指定要訪問的數據庫。從下拉列表中選擇 ADMINREG。

Runtime 選項指定在映射時從 Map Designer、Command Server 或 Launcher 訪問的數據庫。本文的運行時和開發數據源相同,所以選擇 ADMINREG。

擴展 Security 選項。這些選項指定連接到數據庫實例的用戶 ID 和密碼。輸入您的 DB2 用戶 ID 和密碼。

單擊 OK 保存數據庫連接信息。Database Definition 窗口看起來應該如圖 2 所示。

圖 2

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

測試這個連接:

在 Database Interface Designer 導航器中,右鍵單擊 Tables 並選擇 Generate Tree。

如果打開一個帶選項的對話框,則說明已經建立一個連接。

如果沒有打開一個帶選項的對話框,則說明沒有建立連接。檢查 Security Information 以確認連接:

圖 3. 從 Tables 向導生成類型樹

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

查看 ADMINREG 中的表 User、Group 和 UserGroup。

關閉 Generate Tree 對話框並將該 Database Query File 保存為 Database_QueryFile1.mdq,下一小節將使用這個文件。

1.2. 從數據庫表生成類型樹

類型樹可以從數據庫、查詢、已存儲過程或視圖自動生成。在上一小節中,您建立了一個到數據庫的連接,現在您可以重用這個連接生成一個類型樹。

為 USER 表生成一個類型樹

在 Database Interface Designer 中,右鍵單擊導航器中的 Tables 並選擇 Generate Tree。

從 Tables 對話框中選擇 USER。

File Name 字段指定要創建的類型樹的名稱。輸入 Database_QueryFile1.mtt。

通過選擇 Overwrite file 或 Replace existing types,Type 選項允許您替換一個現有類型樹文件,並通過選擇 Override type 添加新類型。由於您要創建一個新的類型樹,因此將 Type 選項更改為 Overwrite file。

為一個數據庫表生成類型樹時,Database Interface Designer 將自動定義一個名為 Row 的組。Row 組格式下拉列表用於指定該組的格式,可以指定為定界格式或固定格式。對於這個練習,保留默認值。

可以指定 Group 選項,比如記錄的每個字段之間的分隔符、每條記錄的結束符等。

Represent date/time columns as text items 選項允許控制日期和時間數據類型在類型樹中的創建方式。如果選擇這個選項,定義為 Date 數據類型的數據庫列在類型樹中定義為一個字符文本字符串。

Treat text items as: 選項允許將語言指定為 English (Western) 或 Japanese,如果您安裝的是 Design Studio 的國際版的話。將這個選項設置為 Western 並單擊 Generate。Database Interface Designer 將創建一個對應於 USER 表的類型樹並顯示通知消息。

圖 4. 從一個表生成類型樹

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

單擊 Close 關閉窗口。這個對話框提供已創建數據類型的概覽。

1.3. 在 Database Interface Designer 中啟用跟蹤功能

跟蹤功能提供關於數據庫連接的信息。在生成類型樹時,如果啟用了跟蹤功能,Database Interface Designer 將自動創建一個跟蹤文件。跟蹤文件保存在 database/query 文件所在的目錄中,文件名為 database/query 文件的完整名稱加上擴展名 .dbl。例如,如果 database/query 文件名為 Orders.mdq,則跟蹤文件的名稱為 Orders.dbl。要使用跟蹤功能,在 Database Interface Designer 中啟用跟蹤工具,如圖 5 所示。

圖 5. Database Interface Designer 中的跟蹤工具

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

1.4. 為查詢生成類型樹

類型樹可以從數據庫、查詢、存儲過程或視圖中自動生成。在前面的小節中,您創建了一個數據庫連接,現在您可以重用該連接從一個查詢生成一個類型樹。

創建一個引用數據庫中的 USER 表的簡單查詢

在 Database Interface Designer 中,右鍵單擊 Navigator 中的 QuerIEs 並選擇 New。

查詢名稱惟一地標識查詢。輸入 MyUserQuery。

在 Query 窗口中輸入以下 SQL 語句:Select * from USER,該語句將選擇 USER 表的所有列。

單擊 OK。查詢名稱將出現在 QuerIEs 副標題下的 Navigator 中。

生成如圖 6 所示的類型樹。

圖 6. 為一個查詢生成類型樹

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

Generate Tree 對話框與從一個表生成類型樹時一樣。

生成類型樹並將其保存為 MyUserQuery.mtt。下一小節的映射將使用這個類型樹。

右鍵單擊並保存文件 Database_QueryFile1.mdq。

2. 在 WebSphere TX Design Studio 中開發映射

在這個部分中,您將使用第 1 部分生成的 MyUserQuery.mtt 類型樹和 Database_QueryFile1.mdq 文件從 USER 表獲取記錄並將記錄寫入一個平面文件。您將把這種類型映射到輸入卡中的輸入源。

2.1. 啟動 WebSphere TX Design Studio 並創建一個 Extender 項目

由於您必須使用映射和轉換,啟動 WebSphere TX Design Studio:選擇 Start => IBM WebSphere Transformation Extender => Design Studio => Design Studio。選擇一個工作空間並關閉 Welcome 視圖。如圖 7 所示創建一個 Extender 項目:

圖 7. 創建一個 Extender 項目

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

輸入項目名 SampleProject 並單擊 Finish。一個項目將被添加到您的工作空間中。

2.2. 准備映射和轉換

在這個小節中,您首先要創建映射源文件,它是您的映射的占位符;然後要在這個映射源文件中創建可執行映射。可執行映射可以擁有一個或多個輸入和輸出卡。在輸入卡中配置輸入類型樹和適配器設置,在輸出卡中配置輸出卡和適配器設置。然後,執行映射操作,構建和運行映射來檢查結果。在您的工作目錄中創建一個新的映射源文件,將其命名為 MyFirstMap.mms。右鍵單擊您的 SampleProject 中的 Map Files 文件夾並選擇 New => Map Source。

圖 8. 創建新的映射源文件

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

在 Design Studio 的概覽視圖中右鍵單擊映射源文件並添加一個名為 DatabaseMap 的新映射。

添加輸入卡

添加一個名為 MyDBCard 的輸入卡。

選擇 MyUserQuery.mtt,這是從查詢創建的類型樹,將 Type 選擇為 DBSelect(如圖 9 所示),因為這個組代表整個表而不是一條記錄。如果您需要轉換單個記錄,那麼選擇組 Row。

圖 9. 創建一個輸入卡

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

將 Source 設置更改為適配器數據庫,原因是您將從那個數據庫獲取輸入信息。

將正在使用的數據類型指定為數據源。當您將 Source 設置更改為 Database 時,DatabaseQueryFile 設置出現在輸入卡中。

File 設置指定 database/query 文件(.mdq),該文件包含查詢的定義。選擇 Database_QueryFile1.mdq 作為 File 設置。

數據庫下拉列表自動更新為顯示在選中文件中定義的所有數據庫。ADMINREG 是文件 Database_QueryFile1.mdq 中定義的惟一數據庫,因此它自動選中為數據庫。

Query 設置指定作為數據源使用的查詢。如果選中數據庫中定義了多個查詢,將顯示一個所有查詢的下拉列表。選擇 MyUserQuery 作為 Query。

單擊 OK 保存設置。這個輸入卡如圖 10 所示:

圖 10. 輸入卡設置

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

添加輸出卡

添加一個名為 OutputCard 的輸出卡。

選擇 MyUserQuery.mtt 作為 Type 樹,選擇 DBSelect 作為 Type。

選擇 Target 作為 File adapter,因為輸出將被寫入一個文本文件中。指定路徑為 c:/Mytestfile.txt,單擊 OK 保存。

2.3. 構建並運行映射

現在您已為映射創建了輸入和輸出卡,已經准備好進行轉換了。將組 MYDBCard 從輸入卡拖放到輸出卡組規則列。

圖 11. 映射輸入和輸出

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

右鍵單擊概覽視圖中的映射,單擊 Build 編譯映射。然後右鍵單擊映射並單擊 Run。您應該得到消息:Map completed successfully。

圖 12. 運行映射

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

測試結果

右鍵單擊概覽視圖中的映射並單擊 Run results,選擇結果文件並單擊 OK。您將看到,Design Studio 中有一個 Mytestfile.txt 文件,這表明來自 USER 表的記錄已經被轉換為一個文本文件,如圖 13 所示。

圖 13. Run Results 視圖

使用 WebSphere Transformation Extender Database Interface Designer 和 Database Adapter 轉換數據

來自 USER 表的記錄在運行時被轉換為一個文本文件。

結束語

本文介紹了 WebSphere TX 資源適配器和 WebSphere TX Database Interface Designer,展示了如何使用 WebSphere TX 輕松連接到一個數據庫,通過從數據庫獲取數據執行轉換。本文還展示了如何在 Database Interface Designer 中啟用跟蹤功能,介紹了類型樹和映射等 Design Studio 基礎特性。

注意:

開始本教程之前,執行這些模式查詢以在 DB2 中創建一個數據庫。

本文示例源代碼或素材下載

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