同義詞:同義詞是對象的別名,不佔用任何實際的存儲空間,只在oracle 數據字典中保存其定義描述,在使用同義詞時,oracle 會將其翻譯爲對象的名稱
- 用途:
簡化sql 語句
隱藏對象的名稱和所有者
爲分佈式數據庫的遠程對象提供位置透明性
提供對數據庫對象的公共訪問
創建數據庫鏈接的語法:
-
同義詞分類:
-
私有同義詞:
私有同義詞只能被當前會話的用戶訪問,私有同義詞名稱不可與當前模式的對象名同名。要在自身的模式創建私有同義詞,用戶必須擁有create synonym 系統權限,要在其他用戶模式創建私有同義詞,用戶必須擁有create any synonym系統權限
語法:
create or replace synonym schema.synonym_name for schema.object_name
例如:create or replace synonym emp for scott.emp;
-
公有同義詞
公有同義詞被所有的數據庫訪問。公有同義詞可以隱藏基表的身份,並降低sql 語句的複雜性。要創建公有同義詞,用戶必須擁有 create public synonym 的系統權限
語法:
create public synonym 同義詞名稱 for 替代對象
例如:create public synonym public_sy_dept for scott.dept;
-
私有同義詞:
-
刪除同義詞:
語法:
drop synonym 同義詞名稱
例如drop synonym public_sy_dept;
create database link 數據庫連接名 connect to 用戶名 identified by 口令 using Oracle數據庫連接
如
create databse link scdbLink connect to scott identified by tigger using '192.168.1.99:1521/orcl'