同義詞是資料庫模式物件的乙個別名,經常用於簡化物件訪問和提高物件訪問的安全性。在使用同義詞時,oracle資料庫將它翻譯成對應模式物件的名字。與檢視類似,同義詞並不占用實際儲存空間,只有在資料字典中儲存了同義詞的定義。在oracle資料庫中的大部分資料庫物件,如表、檢視、同義詞、序列、儲存過程等,資料庫管理員都可以根據實際情況為他們定義同義詞。隱藏物件名稱和所有者。
私有oracle同義詞由建立它的使用者所有;建立的使用者需要具有create synonym許可權。
【語法】
create synonym for
【示例】
--管理員
授權使用者
zx建立同義詞的許可權
grant
create
synonym
tozx;
--建立私有同義詞
create
synonym
syn_emp
foremp
; create
synonym
syn_v_emp
forv_emp;--
為檢視v_emp
建立私有同義詞(別名) --
使用私有同義詞
select
empno
,ename
from
syn_emp
; update
syn_emp
setename='
zx5'
where
empno
='1234';
--刪除同義詞
drop
synonym
syn_emp;
公有oracle同義詞由乙個特殊的使用者組public所擁有。顧名思義,資料庫中所有的使用者都可以使用公有同義詞。公有同義詞往往用來標示一些比較普通的資料庫物件,這些物件常需要引用。公有同義詞一般由管理員使用者建立及刪除,普通使用者需要建立及刪除需要create public synonym和drop public synonym許可權。
【語法】
create public synonym for
--登陸
sys管理員使用者,授權使用者
zx建立、刪除(公有的刪除許可權需要特別給定)公有同義詞許可權
grant
create
public
synonym
,drop
public
synonym
tozx
; --revoke create public synonym,drop public synonym from zx;
--登陸zx
使用者建立公有同義詞
conn zx/
zx;create
public
synonym
syn_public_emp
foremp;
--使用公有同義詞
select
*from
syn_public_emp;
-- 登入
system
管理員conn system/orcl;
建立zx
2並授權
--create user
zx2 identified by
zx2 default tablespace
zx_ts;
--grant connect,resource to
zx2; --
為其它使用者zx2
授權使用公有同義詞(需要給予使用表的許可權)
grant
select
,update
onzx
.emp
tozx2;
--revoke select,update on
zx.emp from
zx2; --
登陸zx
2使用者下使用公有同義詞
syn_public_emp
select
*from
syn_public_emp
; update
syn_public_emp
setename='
it5'
where
empno
=5555;
--刪除同義詞
--登陸
zx,刪除公有同義詞
drop
public
synonym
syn_public_emp;
oralce資料庫同義詞
例如 個人網銀 ebank per 訪問營銷平台的資料庫 ebank mng step 1 在營銷平台執行授權操作 grant select update on yc activity mp to ebank per 將yc activity mp 的查詢和修改許可權給ebank per step ...
Oracle資料庫同義詞詳解
一 定義 同義詞顧名思義,是資料庫方案物件的乙個別名。這裡的資料庫方案物件指表 檢視 序列 儲存過程 包等。二 同義詞的好處 1 不佔記憶體空間,節省大量的資料庫空間 2 簡化了資料庫物件的訪問 3 提高了資料庫物件訪問的安全性 4 擴充套件的資料庫的使用範圍,能夠在不同的資料庫使用者之間實現無縫互...
Oracle資料庫物件 同義詞
同義詞就是為資料庫物件定義的別名,主要目的就是監護物件的訪問和提高資料庫的安全性。在使用同義詞時,資料庫將他轉化成對應的物件名字。同義詞與檢視類似,他不占用實際儲存空間,只是在資料字典中儲存了定義。同義詞分為共有同義詞和私有同義詞。私有同義詞一般由使用者建立,預設只能由使用者本人使用。共有同義詞一般...