数据百科

您现在的位置是:首页 > 数据库 > oracle

oracle

如何创建ORACLE 同义词及同义词使用方法

2019-12-12 18:49:56数据百科
同义词,可划分为公有及私有同义词,当公有和私有同义词有相同名称时,用户访问同义词顺序是先访问私有同义司。 如 select * from tab 这个tab即是公有的同义词,通过如下的命令,
同义词,可划分为公有及私有同义词,当公有和私有同义词有相同名称时,用户访问同义词顺序是先访问私有同义司。
如 select * from tab   这个tab即是公有的同义词,通过如下的命令,可以进行查询
select owner,synonym_name,table_owner,table_name from all_synonyms where owner<>'SCPTT' and synonym_name='TAB';
通过查询all_synonym表,排除掉用户自己创建的都为公有同义词
1.jpg

通过create synonym synonym_name for table;  创建
创建同义词之前,需要先确认当前的用户是否有创建同义词的权限,通过select * from session_privs;
1.jpg
显然是不没有权限的,连接到dba用户,进行授权
grant create synonym to scott;
grant create public synonym to scott;
1.jpg
创建私有同义词  create synonym tab for test;
1.jpg
通过创建同义司为tab同公有同义词tab,再通过select * from tab时,可以明显看出查询的结果为test表的数据