Oracle同义词

来源:互联网 发布:网络推广费用预算 编辑:程序博客网 时间:2024/06/06 17:19
Oracle中同义词(synonym ):oracle中同义词是任何表、视图、物化视图、序列、存储过程、函数、包、类型、Java类对象、用户定义类型,或是其他的同义词的别名。由于其只是一个别名,所以除了在数据字典中的定义不占任何空间。
作用:
可以隐藏表原来的名字。
提供对象访问的安全性。
分类:
公共同义词:
所有用户都可以直接引用,并且这种同义词由public组用户所拥有。
私有同义词:
只能由其对象用户直接引用。
创建同义词:
语法:
create  synonym  同义词名字 for  [用户名.]表名;
例如:给表test创建一个同义词
create synonym my_te for test;
创建一个公共同义词:用户必须具备create public synonym系统权限
语法:
create  public synonym  同义词名字 for   [用户名.]表名;
例如:给用户名为briup下的test表创建一个public_test同义词
create public synonym public_test for briup.test; 
授权给所有人
grant select on my_te to public 
创建私有同义词:用户必须具备create public synonym系统权限
如果在其他用户下创建同义词,该用户必须具备create any synonym权限
语法:
create   synonym  同义词名字 for  [用户名.]表名;
例如:给用户名为briup的test表创建一个同义词private_test
create synonym private_test for briup.test;
删除同义词:
删除公共同义词:
语法:drop public  synonym 同义词的名字
例如:drop public synonym public_test;
删除私有同义词:
语法:drop synonym 同义词的名字
例如:drop synonym private_test
原创粉丝点击