一、同義詞的概念
同義詞(synonym)就是數據庫對象的別名,這裏的數據庫對象包括表、視圖、序列、存儲過程、包等。
同義詞有兩方面的意義:1)簡化了數據庫對象名稱的書寫;2)提高了數據庫對象的安全性(因爲只知道對象的別名,不知道它的真名)。
Oracle的dual虛表其實就是一個公用的同義詞。
二、創建同義詞
1、創建同義詞的權限
用dba權限登錄數據庫,授於用戶create synonym和create public synonym權限。
語法:
grant create synonym to 用戶名;
grant create public synonym to 用戶名;
示例:
2、創建synonym的命令
語法:
create [public] synonym 同義詞名 for [用戶名.]數據庫對象名;
說明:
public:同義詞的類型,缺省是當前用戶私有的,只有當前用戶可以使用該同義詞,如果加上public選項,表示公用同義詞,所有的數據庫用戶都可以使用。
用戶名:數據庫對象所屬的用戶,缺省是當前用戶。
數據對象名:常用的是表、視圖和序列,其它的不常用。
注意,如果對其它用戶的對象創建同義詞,當前用戶必須具備對其它用戶對象的權限,否則同義詞無法使用。
示例:
1)爲當前用戶的dept表創建同義詞mydept。
create synonym mydept for dept;
2)爲scott用戶的emp表創建同義詞myemp。
create synonym myemp for scott.emp;
3)爲遠程數據庫的scott用戶的emp表創建同義詞remoteemp。
create synonym remoteemp for scott.emp@dblink_01;
4)測試效果。
三、刪除同義詞
刪除當前用戶私有的同義詞:
drop synonym 同義詞名;
刪除公用的同義詞:
drop public synonym 公用同義詞名;
四、版權聲明
C語言技術網原創文章,轉載請說明文章的來源、作者和原文的鏈接。
來源:C語言技術網(www.freecplus.net)
作者:碼農有道
如果文章有錯別字,或者內容有錯誤,或其他的建議和意見,請您留言指正,非常感謝!!!