同義詞(synonym)是表、索引和檢視等模式物件的乙個別名。同義詞只是資料庫物件的替代名,與檢視類似,同義詞並不占用實際儲存空間,只在資料字典中儲存同義詞的定義。在使用同義詞時,oracle簡單地將它翻譯成對應方案的名稱。
通過使用同義詞,一方面可以簡化物件訪問,如資料字典檢視user_indexes的同義詞為ind,資料字典檢視user_sequences的同義詞為seq;另一方面可以提高物件訪問的安全性,如遮蔽物件所有者、物件名和資料庫鏈結名。
在開發資料庫應用程式時,應當盡量避免直接引用表、檢視或其他資料庫物件打的名稱,而改用這些物件的同義詞。這樣可以避免當管理員對資料庫物件做出修改和變動之後,必須重新編譯應用程式。使用同義詞後,即使引用的物件發生變化,也只需要在資料庫中對同義詞進行修改,而不必對應用程式做任何改動。
在oracle中可以建立兩種型別的同義詞:
在建立同義詞時,它所基於的物件可以不存在,並且建立同義詞的使用者也不需要對基礎物件有任何訪問許可權。
語法如下
create[or
replace][
public
] synonym synonym_name
for[
schema
.]object;
為模式temp中的表sys_user建立乙個共有同義詞public_user,儘管該模式並不存在。
create
public synonym public_user
fortemp
.sys_user;
如果同義詞所對應的基礎物件不存在,則當使用者訪問時同義詞將重新編譯,並驗證為無效。
在操作過程中,不能修改或改變同義詞,而只能刪除。
刪除剛剛建立的同義詞
drop
public synonym public_user;
oracle在資料字典中將儲存建立同義詞的定義。通過資料字典檢視user_synonyms,可以查詢有關同義詞的資訊。 ORACLE同義詞詳解
1 同義詞概述 同義詞從字面上理解就是別名的意思,和檢視的功能類似。就是一種對映關係。同義詞擁有如下好處 節省大量的資料庫空間,對不同使用者的操作同一張表沒有多少差別 擴充套件的資料庫的使用範圍,能夠在不同的資料庫使用者之間實現無縫互動 同義詞可以建立在不同乙個資料庫伺服器上,通過網路實現連線。知識...
Oracle同義詞以及同義詞迴圈鏈錯誤。
就是別名的意思。與檢視類似,是一種對映關係。是表 索引 檢視的物件的別名。建立 create public synonym table name for user.table name 好處 節省資料空間,不同使用者操作同一種表無差別。能夠在不同的資料使用者之間實現無縫互動。簡化物件訪問 和 提高物...
Oracle的同義詞
oracle中建立同義詞語句 create synonym table name foruser.table name 其中第乙個user table和第二個user table可以不一樣。此外如果要建立乙個遠端的資料庫上的某張表的同義詞,需要先建立乙個databaselink 資料庫連線 來擴充套...