Oracle11gr2新增版本功能(一)
在11.2中,Oracle資料庫引入的版本的概念,這為應用程式的升級提供了極大的方便。
這篇簡單描述建立版本的語法,以及版本的使用。
下面是一個最簡單的例子,來說明版本的含義:
SQL> conn yangtk/yangtk
已連線。
SQL> select synonym_name from user_synonyms;
未選定行
SQL> create synonym s_1 for t;
同義詞已建立。
SQL> create edition my_edition;
版本已建立。
SQL> select sys_context('USERENV', 'CURRENT_EDITION_NAME') from dual;
SYS_CONTEXT('USERENV','CURRENT_EDITION_NAME')
----------------------------------------------------------------------------------
ORA$BASE
SQL> desc t
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
NAME VARCHAR2(30)
TYPE VARCHAR2(20)
SQL> desc s_1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
NAME VARCHAR2(30)
TYPE VARCHAR2(20)
SQL> alter session set edition = my_edition;
會話已更改。
SQL> create or replace synonym s_1 for t1;
同義詞已建立。
SQL> desc t1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
SQL> desc s_1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
SQL> alter session set edition = ora$base;
會話已更改。
SQL> desc t1
名稱 是否為空? 型別
------------------------------------ -------- --------------------------------------------
ID NUMBER
首先建立一個指向T的同義詞S_1,然後檢查當前生效的版本,然後建立一個新的版本MY_EDITION,並啟動這個版本,然後重建同義詞S_1指向T1。上面的結果顯示EDITION沒有起作用,在不同的版本中看到的同義詞是相同的。
這個由於當前使用者並沒有啟用版本資訊,下面啟用版本後重覆上面的操作:
SQL> drop edition my_edition;
版本已刪除。
SQL> drop synonym s_1;
同義詞已刪除。
SQL> alter user yangtk enable editions;
使用者已更改。
SQL> create synonym s_1 for t;
同義詞已建立。
SQL> desc t
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
NAME VARCHAR2(30)
TYPE VARCHAR2(20)
SQL> desc s_1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
NAME VARCHAR2(30)
TYPE VARCHAR2(20)
SQL> create edition my_edition;
版本已建立。
SQL> select sys_context('USERENV', 'CURRENT_EDITION_NAME') from dual;
SYS_CONTEXT('USERENV','CURRENT_EDITION_NAME')
------------------------------------------------------------------------------------
ORA$BASE
SQL> alter session set edition = my_edition;
會話已更改。
SQL> create synonym s_1 for t1;
create synonym s_1 for t1
*
第 1 行出現錯誤:
ORA-00955: 名稱已由現有物件使用
SQL> create or replace synonym s_1 for t1;
同義詞已建立。
SQL> desc s_1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
SQL> desc t1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
SQL> alter session set edition = ora$base;
會話已更改。
SQL> desc s_1
名稱 是否為空? 型別
----------------------------------- -------- --------------------------------------------
ID NUMBER
NAME VARCHAR2(30)
TYPE VARCHAR2(20)
可以看到,在不同的版本中,同義詞的指向是不同的。這種方式對於程式的升級而言,存在很大的方便之處。
除了支援同義詞以外,版本還支援VIEW、PROCEDURE、FUNCTION、PACKAGE、TYPE、TRIGGER和LIBRARY。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4227/viewspace-614489/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle11gr2新增版本功能(二)Oracle
- Oracle11gr2新增版本功能(三)Oracle
- Oracle11gr2觸發器新增版本升級功能(一)Oracle觸發器
- Oracle11gr2觸發器新增版本升級功能(二)Oracle觸發器
- Oracle11gr2新增CREATE OR REPLACE FORCE TYPE功能Oracle
- Hanlp1.7版本的新增功能一覽HanLP
- C#各版本新增加功能C#
- Oracle11gr2新增遞迴WITH語句(一)Oracle遞迴
- Oracle11gr2 AUDIT清除功能增強(一)Oracle
- EMQX 多版本釋出、新增自定義函式功能MQ函式
- Oracle11gr2新增APPEND_VALUES提示OracleAPP
- Oracle11gr2新增遞迴WITH語句(三)Oracle遞迴
- Oracle11gr2新增遞迴WITH語句(二)Oracle遞迴
- Oracle11gr2新增PARALLEL_FORCE_LOCAL引數OracleParallel
- Oracle11gr2新增表的RESULT CACHE屬性Oracle
- Oracle11gr2新增ALTER DATABASE LINK語法OracleDatabase
- Oracle11gr2 AUDIT清除功能增強(三)Oracle
- Oracle11gr2 AUDIT清除功能增強(四)Oracle
- Oracle11gr2 AUDIT清除功能增強(二)Oracle
- 版本包新增地址
- go-carbon 1.4.4 版本釋出,部分方法新增時區可選引數和新增功能Go
- SOLIDWORKS新增的一些功能1Solid
- SOLIDWORKS新增的一些功能2Solid
- Oracle11gr2新增提示CHANGE_DUPKEY_ERROR_INDEXOracleErrorIndex
- gorose orm新版本(0.8.0)釋出,新增連線池等特色功能GoROSORM
- .NET Framework (最新版本到.NET Framework 4.7.2)中的新增功能Framework
- 華為運動健康服務Health Kit 6.10.0版本新增功能速覽!健康服務
- 華為運動健康服務Health Kit 6.9.0版本新增功能揭秘!健康服務
- Java版本功能差異一覽指南 - marcobehlerJava
- Oracle11gr2物化檢視日誌新增PURGE語句Oracle
- Oracle11gr2新增提示IGNORE_ROW_ON_DUPKEY_INDEXOracleIndex
- 觸寶電話釋出V5.4.5版本 新增回撥功能
- Dash 2.9.0版本重磅新功能一覽
- 七麥資料釋出「版本更新監控」功能 挖掘共性探尋新增長
- WPS For Linux 6757 社群新版本釋出,新增新功能及修復Linux
- Win10最新版本開啟推送!新增人性化功能Win10
- Metasploit新增技巧提示功能
- 給httprouter新增pprof功能HTTP