DB2 9.7 SQL 兼容性的操作與好處的表現(xiàn)
此文章主要向大家描述的是DB2 9.7 SQL 兼容性的實際操作步驟,以及對DB2 9.7 SQL 兼容性的好處的描述,同時本文也有對SQL 特性的描述,以下就是文章的主要內(nèi)容的詳細描述,望大家在瀏覽之后會對其有更深的了解。
各位開發(fā)人員!您擁有 Oracle 數(shù)據(jù)庫技能嗎?希望在另一種數(shù)據(jù)庫平臺上重用 PL/SQL 知識和代碼嗎?
IBM DB2 for Linux, UNIX, and Windows (LUW) 已經(jīng)完成了一項重大的改造。由于客戶一直要求提供節(jié)省成本的改進,***版本 DB2 9.7 在大家熟悉的領(lǐng)域提供了許多新技術(shù),比如自治(自我管理)和深度壓縮(見本期雜志中的 “DB2 9.7:全面改進”)。
但是,開發(fā)人員最感興趣的是與 SQL 兼容性相關(guān)的功能。這些特性讓客戶更容易采用 DB2 作為數(shù)據(jù)庫軟件,從而利用它的節(jié)省成本和高性能特性。即使客戶目前最熟悉其他數(shù)據(jù)庫系統(tǒng),也很容易掌握 DB2。
在本文中,我將通過示例演示 DB2 9.7 中新的 SQL 兼容特性。首先討論觸發(fā)器和新的數(shù)據(jù)類型,然后談?wù)剬?Oracle SQL 和 PL/SQL 的支持,***討論對象和并發(fā)改進。這樣所有開發(fā)人員都應(yīng)該相信 DB2 是 “兼容的”。
首先,連接 Command Line Processor Plus (CLP Plus) 窗口(見圖 1),把 “db2admin” 替換為您選擇的登錄 ID:
- clpplus db2admin@localhost:50000/sample
SQL 兼容性
使用 DB2 9.7 中新的 SQL 兼容性特性的***步是啟用 DB2_COMPATIBILITY_VECTOR 參數(shù)。設(shè)置 db2set DB2_COMPATIBILITY_VECTOR=ORA,即可為后續(xù)的所有數(shù)據(jù)庫創(chuàng)建操作啟用與 Oracle 相關(guān)的 SQL 兼容性特性。對 DB2_COMPATIBILITY_VECTOR 使用的一些最重要的參數(shù)的解釋見表 1。
要啟用這個特性,您必須具有管理特權(quán)。在 DB2 命令窗口中輸入以下命令:
- db2set DB2_COMPATIBILITY_VECTOR=ORA
- db2stop
- db2start
要創(chuàng)建一個簡單的數(shù)據(jù)庫,輸入:db2 create database [dbname]。然后,可以輸入以下命令連接數(shù)據(jù)庫:
- db2 connect to [dbname];
下一步是創(chuàng)建使用 Oracle 數(shù)據(jù)類型的表。在 CLP Plus 窗口或 IBM Data Studio 中輸入下面的 CREATE TABLE 語句:
- Create table employee (EMPNO NUMBER(5), ENAME VARCHAR2(50), DEPTNO NUMBER(5))
在 DB2 9.7 中,可以通過 CLP Plus 界面體驗 SQL 兼容性特性
PL/SQL 特性
現(xiàn)在討論支持創(chuàng)建 PL/SQL 過程的特性。DB2 9.7 支持:
用戶定義的包
PL/SQL 過程/函數(shù)/匿名塊
內(nèi)置的包(DBMS_OUT.PUT_LINE、DBMS_PIPE、DBMS_UTL 等)
關(guān)聯(lián) (INDEX BY) 數(shù)組
Varrays
觸發(fā)器
- %ROWTYPE
- %TYPE
- EXCEPTIONS
- Ref-Cursors
注意,只有 DB2 9.7 for LUW 的 Enterprise Server Edition 和 Workgroup Edition 提供 PL/SQL 支持。在 DB2 Express-C、DB2 Express 和 DB2 Personal Edition 中不支持 PL/SQL。
完整內(nèi)容的學(xué)習(xí),請訪問:
http://www.ibm.com/developerworks/cn/data/dmmag/dbt14n2/InTrans/index.html
【編輯推薦】
- IBM DB2數(shù)據(jù)庫新手必看的基礎(chǔ)知識有哪些?
- 如何正確管理DB2 For z/OS or OS/390的操作性能
- 安裝DB2 Content Manager8.3出現(xiàn)144錯誤代碼
- 安裝IBM DB2 Content Manager V83時與122錯誤代碼
- DB2 -964問題的正確解決方法的描述