一、掌握公有同义词和私有同义词的用法

1,同义词:就是现有对象的一个别名。

注意:创建同义词需要 system 及以上用户赋权之后才可以创建,赋权语句为:

grant create synonym to scott;  --表示将私有同义词的创建权限赋给 scott 用户

grant create puble synonym to scott;  --表示将公有同义词的创建权限赋给 scott 用户

2,作用:简化 SQL 语句,隐藏对象的名称和所有者,提供对对象的公共访问

3,同义词共有两种类型:私有同义词,公有同义词

3-1,私有同义词:只能在其模式内访问,且不能与当前模式的对象同名;

create [or replace] synonym syn1 for scott.emp; 表示创建一个私有同义词 syn1,表示的是 scott.emp;使用方法为:select * from syn1; drop synonym syn1;表示删除私有同义词

3-2,公有同义词:可被所有的数据库同户访问

create public synonym syn2 for dept; 表示创建一个公有同义词 ;drop public synonym syn2; 表示删除公有同义词

注意:如果其他用户要想访问另一张表的同义词,即使是公有同义词,都必然要先得到访问此表的基表的权限;另外公有同义词需要 system 及以上权限才可以删除

4,select * from all_objects a where a.object_name='TAB'; 表示查询当前表可用对象中的名为 TAB 的对象的信息

5,select * from all_synonyms u where u.synonym_name='TAB';表示查询同义词为 TAB 的信息

 

posted on 2018-12-11 14:24  独自的独行  阅读(157)  评论(0)    收藏  举报