oracle同义词的使用
2种情况创建同义词
一)同服务器不同用户:
场景:
用户A:创建了一张表 person
用户B:想要创建同义词来使用 person
操作步骤:
1、先登录 用户A 执行 grant select, insert, update, delete, references, alter, index on person to 用户B ;
2、再登录 用户B 执行 create public synonym person for 用户A.person ;
二)不同服务器:
服务器1,用户A:创建了一张表 person
服务器2,用户B:想要创建同义词来使用 person
操作步骤:
1、创建DBLink
create database link dblink名称(dblink的名称随便起)
connect to 用户A
using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS =(PROTOCOL = TCP)(HOST = 服务器1访问数据库的ip )(PORT = 服务器1访问数据库的端口 )))(CONNECT_DATA =(SERVICE_NAME = orcl)))' ;
2、创建同义词
create synonym person for person@dblink名称
三)删除同义词
drop public synonym 同义词表名
四)关键词详解:
grant:授权(给同义词的表、视图、存储过程等)
select:查询权限
insert:插入权限
update:修改权限
delete:删除权限
references:外键约束权限
alter:alter操作权限
index:索引权限