同义词(Synonym)是表、索引、视图等模式对象的一个别名。通过模式对象创建同义词,可以隐藏对象的实际名称和所有者信息,隐藏分布式数据库中远程对象的设置信息,由此为对象提提供一定的安全性保证。同义词不占用任何实际存储空间。
Oracle同义词分两种类型:公有同义词,私有同义词。公有同义词所有用户都可以使用,私有同义词只有被创建它的用户拥有,只能由该用户以及授权的其他用户使用。
创建同义词的语法:
create public synonym synonym_name for schema.table_name; -- public 同义词
create synonymsysnonym_name for schema.table_name; -- 私有同义词
创建一个公有同义词
create public synonym syn_emp for scott.emp;
select * from syn_emp;
创建一个私有同义词
create synonym syn_pri_emp for scott.emp;
select * from syn_pri_emp;
删除同义词
drop public synonym syn_emp; -- 删除公有同义词
drop synonym syn_pri_emp; -- 删除私有同义词