DB2 9 入門: 應用程序開發方面的增強

發表于:2007-05-24來源:作者:點擊數: 標簽:開發方面的應用程序db2入門
IBM DB2 9 for Linux , UNIX , and Windows 中為開發人員提供的增強包括一個新的 Developer Workbench、與 .NET 環境的更深入的集成、對 XML 和 SOA 環境的豐富的支持、用于 PHP 和 Ruby on Rails 的新驅動程序和適配器以及新的應用程序示例。本文是介紹 DB2
IBM® DB2® 9 for Linux®, UNIX®, and Windows® 中為開發人員提供的增強包括一個新的 Developer Workbench、與 .NET 環境的更深入的集成、對 XML 和 SOA 環境的豐富的支持、用于 PHP 和 Ruby on Rails 的新驅動程序和適配器以及新的應用程序示例。本文是介紹 DB2 9 的特性的一個 系列 中的最后一篇文章,文中對這些增強作了概述。

簡介

DB2 9(以前的代號為 “Viper”)提供了大量的增強來簡化數據庫應用程序的開發,減少開發時間,以及提高開發人員的生產率。除了為健壯的企業應用提供一個平臺外,DB2 9 還在快速構建基于 Web 服務、XML 提要、數據聯合等技術的新型 “Web 2.0” 應用程序方面進行了優化。





回頁首


新的 Developer Workbench

Developer Workbench 是一個可視化工具,用于輔助快速開發 DB2 業務對象,它是免費提供的。這個新設計出來的工具基于 Eclipse 框架,用于替代 DB2 Development Center(基于 Swing 架構)。

Developer Workbench 使以下任務變得容易:

  • 創建、查看和編輯數據庫對象(例如表和模式)。
  • 瀏覽和編輯表和行中的數據。
  • 可視化地構造 SQL 和 XQuery 語句。
  • 開發和部署存儲過程、用戶定義函數(UDF)、例程和腳本。
  • 調試 SQL 和 Java™ 存儲過程
  • 開發 SQLJ 應用程序。
  • 開發針對 XML 數據的查詢和例程。
  • 執行數據移動(例如裝載和提?。?。
  • 與小組成員協作和共享項目。
  • 從 DB2 Development Center 中遷移項目。
  • 等等……
并不是 Developer Workbench 的所有特性在所有平臺上都受支持。在初始發布的 Developer Workbench 中,較早版本的 DB2 可能不受支持。

除了為開發 DB2 9 on Linux, UNIX, and Windows 應用程序和對象提供界面外,Developer Workbench 還為在其他平臺(DB2 for iSeries™ 和 DB2 for z/OS®)上使用 DB2 提供了一個公共接口。也可以將 Developer Workbench 與 IBM Cloudscape™ 或 Apache Derby 一起使用。

Developer Workbench —— 安裝

Developer Workbench 安裝媒體與基本 DB2 9 產品安裝 CD 是分開的,但是可以在同一個媒體包中找到。由于 Developer Workbench 可以與各種不同平臺和 IBM 數據服務器一起使用,因此可以從網上免費下載。它的安裝非常簡單,通過使用圖形安裝程序,只需單擊幾下鼠標就能完成安裝。安裝時所用空間大約為 400MB(在不同平臺上可能有所差異),其中包含一個獨立的 Eclipse 鏡像,以減少與安裝在系統上的其他基于 Eclipse 的工具之間的版本問題。隨 Developer Workbench 一起安裝的信息中心中含有 Developer Workbench 幫助和教程。

Developer Workbench —— 布局

Developer Workbench 有多個用于開發 DB2 業務對象的視圖,例如:

  • Database Explorer 視圖 —— 顯示數據庫中有哪些東西(例如表、存儲過程、UDF、依賴關系、遠程服務器),并允許執行針對這些對象的動作(例如創建、運行以及瀏覽屬性)。
  • Data Project Explorer 視圖 —— 在該視圖中,可以通過一些簡單的操作,如拖放、復制和粘貼、向導、上下文敏感的完成選項,進行過程、UDF 和 SQL 語句的開發。
  • Data Output 視圖 —— 通過該視圖可以查看在數據庫上的數據開發動作的報告。

圖 1. 顯示多個視圖的 DB2 Developer Workbench 布局
顯示多個視圖的 DB2 Developer Workbench 布局

 

Developer Workbench —— 開發和部署例程

通過 Developer Workbench 很容易開發 SQL 和 Java 例程(存儲過程和 UDF)。這些服務器端對象可以幫助封裝業務邏輯,并減少網絡傳輸。對于例程,在 Developer Workbench 中可以執行以下動作:

  • 顯示數據庫服務器中已有的例程。
  • 使用向導創建一個新的例程。
  • 導入例程源文件,或者將已有的過程復制到開發項目中。
  • 用例程編輯器編輯過程源代碼和屬性。
  • 將 Java 過程打包在多個 JAR 文件中。
  • 將過程部署到不同的服務器上(例如,將為 DB2 for Windows 服務器開發的例程部署到 DB2 for System z™)。
  • 估計在 DB2 for z/OS 上運行語句的成本。
  • 并排比較和編輯例程。
  • 導出過程,以便獨立于集成開發環境(IDE)進行批量部署。
  • 運行例程(測試調用)。
  • 通過在代碼中逐步執行、設置斷點、查看變量內容等方法調試存儲過程。
  • 將例程從數據庫連接拖放到項目中。

圖 2. 使用 Developer Workbench 開發存儲過程
使用 Developer Workbench 開發存儲過程




回頁首


更深入的 .NET 集成

DB2 是第一個提供對 Microsoft® .NET framework 內置支持的主流數據服務器,甚至早于 Microsoft 自己的 SQL Server。DB2 9 則更進一步,它提供了更豐富、更深入的 .NET 與 Visual Studio 之間的集成,以幫助您以更快的速度開發更強大的應用程序。DB2 在這方面的增強包括:

  • 更豐富的用于 Visual Studio 2005 的工具和插件。
  • 經過更新的用于 .NET framework Version 2.0 的數據提供程序。

更豐富的 Visual Studio 2005 插件

DB2 提供了用于 Visual Studio 的插件,來幫助您用少量或者完全不用 C# 或 Visual Basic 代碼輕松構建 .NET 應用程序、Web 站點、Web 服務和數據庫服務器端業務邏輯,并且這一切都不必離開 Visual Studio 環境。在 DB2 9 中,這些插件得到了極大的增強,包含了很多獨特的功能,而其他數據服務器通常需要借助第三方的插件來獲得這些功能。

這些增強的用于 Visual Basic 的 DB2 工具包括:

IBM Server Explorer 已經從用于 Microsoft Visual Studio 2005 的 IBM 數據庫插件中消失,但是仍然保留在用于 Microsoft Visual Studio 2003 的 IBM 數據庫插件當中。
  • 用于容易地處理數據庫對象(例如表、視圖、腳本、過程和結果集)的新的 IBM 設計器
  • 在無需編寫代碼的情況下生成和部署基于 DB2 的 Web 服務的能力
  • 與 Microsoft Server Explorer 的集成,用以執行數據庫活動(例如管理連接和瀏覽數據庫對象)
  • 容易地創建和調試 SQL 過程(包括公共語言運行時 [CLR] 存儲過程)的能力
  • 克隆 DB2 數據庫對象的能力
  • 用于快速訪問模式信息的模式緩存
  • 高級對象過濾功能
  • 將數據導入和導出數據網格的功能
  • 與 Microsoft Query Builder 的集成
  • 用于重新運行例程的參數持久性支持
  • 對 IBM 家族的數據服務器,包括 Informix® Dynamic Server (IDS)、DB2 for z/OS、DB2 for iSeries 以及 DB2 for Linux, UNIX, and Windows 的支持
  • 對新的 DB2 pureXML™ 數據類型和特性的全面支持

圖 3. Visual Studio 2005 中用于開發存儲過程的 DB2 插件
Visual Studio 2005 中用于開發存儲過程的 DB2 插件

 

要了解關于 DB2 9 與 Visual Studio 之間集成的更多細節,請參考 DB2 developerWorks zone for Visual Studio and .NET。

經過更新的本地 DB2 .NET 數據提供程序

DB2 附帶了一個經過更新、能用于 .NET framework Version 2.0 的本地 .NET 數據提供程序,并且該數據提供程序被集成到 Visual Studio Server Explorer 中。這個更新后的 .NET 數據提供程序包括以下增強:

  • 對 System.Data.Common 基類的支持 —— 這使您可以開發通用的 .NET 數據庫應用程序,而不必引用任何與特定類相關的數據提供程序。在編寫要在各種不同數據服務器(或提供程序)中重用的應用程序代碼時,這一點尤其有用。在適當情況下,DB2 .NET 數據提供程序從 System.Data.Common 名稱空間中的相應類繼承而來。
    DbProviderFactory myFactory =
                    DbProviderFactories.GetFactory("IBM.Data.DB2");

    或者,也可以使用 DB2Factory 類來創建與 DB2 相關的 .NET 對象:

    DB2Factory myFactory = DB2Factory.Instance;

  • DB2 數據類型與 .NET 數據類型的對等關系 —— 在 .NET 中,對于所有 DB2 數據類型,DB2Type 名稱空間中都有一個對等的數據類型。借助這一點,開發人員可以使數據類型完全保持原狀。DB2Types 類型還提供了將 DB2 數據庫列值表示為一個個可以為空的對象的方法。DB2Types 類的實例還可以作為 CLR 存儲過程或用戶定義函數的參數。
  • 可滾動和可更新結果集 —— 現有 DB2Command 類中添加了新的方法,用于創建可導航的結果集。這些方法使您的應用程序可以更新單個的列值,或者前后滾動結果集。
  • 數據分頁功能 —— DB2Command 類現在有一個 ExecutePageReader 方法,該方法使應用程序可以從數據庫中取一組特定的行。它允許應用程序指定從數據庫中所取的起始行,以及所取的行數。在查找一組特定的行的時候,這個特性非常有用,而且比通過滾動整個結果集尋找所需的行要快得多,也簡單得多。
  • 批量數據復制 —— 新的 DB2BulkCopyOperation 類提供了批量復制 DB2 表中的數據的能力。這使得插入來自 DataReader 之類的數據源或非 DB2 數據源的記錄變得容易。
  • SQL 語句的批量更新 —— DB2DataAdapter 的 UpdateBatchSize 屬性使應用程序可以在將 SQL 語句成批發送給 DB2 數據庫服務器之前,確定要收集的 SQL 語句的數量。這可以大大提高性能,因為這樣減少了客戶機應用程序與數據庫服務器之間零散的數據傳輸。




回頁首


豐富的 XML 開發支持

DB2 9 包含 pureXML 技術,該技術為高度有效地管理和提供 XML 數據提供了一組獨特的功能。pureXML 技術由一個真正的 XML 數據類型(按分層格式存儲 XML,而不是將其存儲為大型對象或分成幾個關系列)、XML 索引能力、XML 文本搜索支持、SQL/XML 和 XQuery 支持、模式演變的靈活性以及大量其他的功能組成,這些功能在 “What’s new in DB2 Viper: XML to the Core”(developerWorks,2006 年 2 月)中有介紹。

作為 pureXML 技術不可或缺的一部分,DB2 9 包含了對開發以 XML 為中心和混合的應用程序的支持,以簡化代碼編寫工作,減少開發時間,并提高應用程序的應變能力。DB2 9 中的 XML 開發支持包括:

  • 對各種編程語言和應用程序接口的支持
  • 對使用 XQuery 和 SQL/XML(或兩者同時使用)查詢數據的支持
  • Developer Workbench 中全面的 XML 功能(包括 XQuery builder)
  • pureXML 與 Visual Studio 和 .NET 的緊密集成
  • 新的 XML 開發代碼示例和 DB2 SAMPLE 數據庫增強

用于編程語言和接口的 XML 數據類型支持

DB2 客戶機接口中已經添加了新的與特定語言相關的 XML 類型和綁定,以允許應用程序高效、無縫地使用 DB2 XML 數據類型。因此,DB2 XML 數據類型支持以下流行的編程語言和應用程序接口:

  • 語言 —— C/C++、Java、C#、Visual Basic、Cobol、PHP
  • 接口 —— JDBC、CLI / ODBC、.NET、Embedded SQL、SQLJ

以 DB2 對 JDBC 中的 XML 的支持為例。新的用于 JDBC 的 DB2 驅動程序已經在 XML 數據方面得到了增強??梢允褂?Java 數據類型,例如字符串、字節數組和流,對作為查詢結果和輸入輸出參數的 XML 數據進行綁定。由于當前的 JDBC 3.0 沒有定義一種本地的 XML 數據類型,因此 DB2 提供了一種擴展 XML 類型,即 com.ibm.db2.DB2Xml。DB2Xml 擴展有很多非常有用的方法,這些方法使得對 XML 數據的處理變得容易。在下面的例子中,一個列被檢索出來并存為 DB2Xml 對象。然后,getDB2String 方法返回 XML 值(沒有 XML 聲明)的字符串對象形式的串行化表示。接著,getDB2XMLBinaryStream("UTF-16") 返回一個用 UTF-16 編碼 XML 值的二進制流,并提供了一個匹配的 XML 聲明。

com.ibm.db2.jclearcase/" target="_blank" >cc.DB2Xml xml1 =
            (com.ibm.db2.jcc.DB2Xml) rs.getObject ("xml_stuff");
            String s = xml1.getDB2String();
            InputStream is = xml2.getDB2XMLBinaryStream("UTF-16");
            

要獲得更多的例子,請參閱文章 “Develop Java applications for DB2 XML data”(developerWorks,2006 年 5 月)。

Developer Workbench 中的 XML 支持

Developer Workbench 包含對 XML 的全面支持:

  • 對 XML 數據類型的支持 —— 這種數據類型在 Developer Workbench 中被視作一等公民,因此可以在查詢和例程中使用 XML 數據類型。您還可以查看、編輯和更新數據庫中 XML 文檔的內容。
  • 對存儲過程的支持 —— 您可以創建和運行包含 XML 數據類型(輸入或輸出)的參數或者返回 XML 數據的存儲過程。
  • 數據輸出視圖 —— 您可以在結果頁面上查看 XML 數據類型的列,還可以將 XML 列的內容可視化成樹或文檔文本的形式。
  • 對 XML 模式的支持 —— 您可以從數據庫中的 XML 模式庫中裝載已有的 XML 模式和 XML 模式文檔,并查看各種屬性,例如目標名稱空間或模式位置。還可以注冊新的 XML 模式(以及相應的 XML 模式文檔)或者刪除它們。
  • XML 文檔驗證 —— 您可以在已注冊的 XML 模式上對 XML 文檔執行 XML 值驗證。
  • XQuery builder —— 通過 XQuery builder,可以創建完整的查詢,而無需理解 XQuery 語義。您可以通過從一個模式或 XML 文檔的樹型表示中選擇示例結果節點,并將這些節點拖放到一個返回網格中,從而可視化地構造一個 XML 查詢。當一個節點在返回網格中被列出來時,就可以鉆?。╠rill down)到查詢中,添加謂詞和排序方式。您可以在一個查詢中鉆取多層,以指定嵌套的謂詞、子句和表達式。例如,您可以選擇一個節點,然后鉆取到查詢中添加一個謂詞。在那個謂詞中,還可以再次向下鉆取,以添加另一個謂詞。在構造好查詢之后,可以直接在 Developer Workbench 中運行它,以便測試該查詢。

圖 4. Developer Workbench 中的 XQuery builder
Developer Workbench 中的 XQuery builder

 

對 Visual Studio 的 pureXML 支持

用于 Visual Studio 的 DB2 插件包含對 pureXML 的全面支持,包括用于執行以下動作的功能:

  • 為列和過程使用 XML 數據類型。
  • 為 XML 列提供 XML 索引。
  • 將 XML 數據可視化的功能。
  • 更新、導入和導出 XML 數據。
  • 在已注冊的 XML 模式上驗證 XML 數據庫。
  • 注冊和注銷 XML 模式。
  • 在 XML 模式的基礎上生成示例數據。
  • 創建和注冊帶注釋的 XML 模式。
  • 執行和可視化 XQuery 和 SQL/XML 腳本。
  • 應用 XSLT 到 XML 數據上,以定制可視化結果。




回頁首


增強的用于 PHP 的 DB2 驅動程序

PHP 已成為最流行的 Web 應用程序開發語言之一。這種開放源碼的腳本編制語言易于學習,并且帶有很多強大的特性,這些特性使開發人員很容易與 HTML 進行交互。有了 Zend 等公司提供的支持和工具,PHP 在企業環境中也變得流行起來,并且被廣泛地與數據庫一起使用。

雖然 PHP 對 DB2 的支持已經提供了較長時間了,但是 IBM 提供的用于 PHP 的驅動程序卻是 2005 年引入的。除了其他改進外,DB2 9 中的 pureXML 支持對于 (ibm_db2) PHP 擴展也是一個增強。最新的驅動程序可以從 PECL 網站免費下載,詳情請參見 參考資料。

這個用于 PHP 的 DB2 驅動程序還包括在 Zend Core for IBM 中,后者是一個特別適合 DB2、IBM Cloudscape 或 Apache Derby 數據服務器的受支持的 PHP 開發和生產環境,它具有無縫、即開即用和易于安裝的優點。要了解關于 Zend Core for IBM 的更多信息,請參見 參考資料。





回頁首


用于 Ruby on Rails 的 DB2 支持

Ruby on Rails 是一種開放源碼的 Web 框架,正迅速成為創建基于 Web 的應用程序的領先技術。Rails 奉行 “約定高于配置(convention over configuration)” 思想以及敏捷開發原則,它可以極大地減少開發時間和花在創建 Web 應用程序上的精力。

IBM 使 DB2 9 支持 Ruby on Rails,并發布了一個用于 DB2 的 Ruby 驅動程序和 Rails 適配器。用于 DB2 on Rails 的 Starter Toolkit 包括 DB2 Express-C (方便構建、部署、分發數據服務器)、教程、例子、flash 電影,還有其他學習資料。要獲得更多詳細信息,或者要下載 DB2 on Rails 相關產品,請參考本文 參考資料 部分給出的 alphaWorks Starter Toolkit。





回頁首


結束語

在本文中,您看到了 DB2 9 在應用程序開發方面的一些增強,這些增強為開發新的敏捷應用程序提供了強有力的支持,并且可以提高開發人員的生產率?,F在,就請測試驅動 DB2 9,并親自體驗其優點。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97