一、掌握公有同义词和私有同义词的用法
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 的信息
浙公网安备 33010602011771号