文章詳情頁(yè)
查找Oracle版本信息的簡(jiǎn)便方法介紹
瀏覽:3日期:2023-11-25 12:51:34
當(dāng)一個(gè)應(yīng)用軟件要分發(fā)給顧客時(shí)——或者甚至是同一個(gè)公司的多個(gè)地點(diǎn)時(shí)——就會(huì)出現(xiàn)版本問(wèn)題。假如所設(shè)計(jì)的程序要用到Oracle某個(gè)特定版本的具體特性時(shí),那么當(dāng)在早期的版本中運(yùn)行時(shí),就會(huì)失敗。 檢查版本信息的一種方法就是選擇動(dòng)態(tài)性能查看表V$VERSION。它輸出一組標(biāo)題似的文字,指明Oracle的版本和各種組件的發(fā)布級(jí)別。但是,要解析這個(gè)輸出是非常繁瑣的。 當(dāng)Oracle 9i Release 2被引入之后,它包括了一個(gè)被稱(chēng)作DBMS_DB_VERSION的新的PL/SQL數(shù)據(jù)包,使得版本的檢查變得更簡(jiǎn)單了。這個(gè)數(shù)據(jù)包中沒(méi)有程序或函數(shù),僅有一系列您可以查詢,從而確定當(dāng)前運(yùn)行版本有用的常數(shù)。 在這個(gè)數(shù)據(jù)包中,最簡(jiǎn)單的兩個(gè)常數(shù)是VERSION和RELEASE。以10gR2為例,在SQL*Plus中執(zhí)行以下命令,將會(huì)返回?cái)?shù)字10: SET SERVEROUT ONEXEC DBMS_OUTPUT.PUT_LINE (DBMS_DB_VERSION.VERSION);其他的常數(shù)都是邏輯值,它們表明了當(dāng)前運(yùn)行版本是否比某個(gè)具體的截止版本老,或者是相同的。只需要簡(jiǎn)單地測(cè)試一下適當(dāng)?shù)倪壿嬛担鵁o(wú)需通過(guò)提取版本、發(fā)布信息和編寫(xiě)邏輯來(lái)檢查: BEGIN IF (DBMS_DB_VERSION.VER_LE_9_2) THEN DBMS_OUTPUT.PUT_LINE ('Oracle 10g is required.'); ELSE DBMS_OUTPUT.PUT_LINE ('Version check sUCcessful.'); END IF;END;/引入這個(gè)特性主要是為了在PL/SQL中支持有條件的編輯。以這些常數(shù)為基礎(chǔ),您可以為您的PL/SQL代碼指定不同的數(shù)據(jù)類(lèi)型或者避免使用未實(shí)現(xiàn)的特性。
標(biāo)簽:
Oracle
數(shù)據(jù)庫(kù)
排行榜
