標籤:sql文法 種類型 私人 刪除 同名 示範 語句 oracl 環境
一、什麼是同義字
同義字是先有對象的別名,主要作用是簡化SQL語句、隱藏對象的名稱和所有者、提供對對象的公用訪問。同義字共有兩種類型,分別是公有同義字和私人同義字;公有同義字可以被所有的資料庫使用者訪問,私人同義字只能在目前使用者模式下訪問,且不能與目前使用者內的對象或者同義字同名。Oracle使用者想要建立同義字,必須要有建立同義字的許可權。
二、建立公有、私人同義字的SQL文法
(1)建立私人同義字:CREATE OR REPLACE SYNONYM SYN_NAME(同義字名) FOR OBJ_NAME(對象名)
(2)建立公有同義字:CREATE OR REPLACE PUBLEC SYN_NAME(同義字名) FOR OBJ_NAME(對象名)
(3)刪除私人同義字:DROP SYNONYM SYN_NAME(同義字名)
(4)刪除公有同義字:DROP SYNONYM PUBLIC SYN_NAME(同義字名)
(5)授予私人同義字許可權給使用者:GRANT CREATE SYNONYM TO USER(Oracle使用者)
(6)授予公有同義字許可權給使用者:GRANT CREATE PUBLIC SYNONYM TO USER(Oracle使用者)
三、效果示範
注意:所有測試的SQL語句均在Oracle11gR2環境下運行。
SCOTT使用者下給EMP表建立同義字,提示沒有建立同義字的許可權,1-1所示;然後給SCOTT建立公有同義字與私人同義字的許可權,1-2所示
圖1-1
圖1-2
接下來,給EMP表建立私人同義字,然而只有SCOTT使用者自己訪問,1-3所示,SYSTEM等其他使用者不能訪問,1-4所示
圖1-3
圖1-4
再接下來,給EMP表建立公有同義字,SCOTT使用者能訪問,1-5所示,SYSTEM等使用者也能訪問,1-6所示
圖1-5
圖1-6
每天一點點,會有提高的,哈哈哈哈哈哈哈。。。
Oracle 基礎——同義字