码迷,mamicode.com
首页 > 数据库 > 详细

Oracle同义词

时间:2018-07-04 15:10:28      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:自己的   分类   授权   占用   介绍   数据字典   两种   目标   用户创建   

1.同义词介绍
同义词在对象简化与数据链接这块应用场景比较多,有了同义词非自主对象就可以不用带上对象的schema来简化书写。
create synonym table_name for table_name@DB_Link,这里可以在有防火墙问题的前提下,在ABC三库下,通过建立同义词,达到一定操作。(A不能访问C,A能访问B,B能访问C)
同义词跟视图的功能类似,就是一种映射关系,都并不占用实际存储空间,只有在数据字典中保存了同义词的定义。
在Oracle数据库中的大部分数据库对象,如表、视图、物化视图、序列、函数、存储过程、包、同义词等等,数据库管理员都可以根据实际情况为他们定义同义词。

2 同义词分类

Oracle同义词有两种类型,分别是Oracle公用同义词与Oracle私有同义词。普通用户创建的同义词一般都是私有同义词,公有同义词一般由DBA创建,普通用户如果希望创建同义词,则需要CREATE PUBLIC SYNONYM这个系统权限。

1)Oracle公用同义词:由一个特殊的用户组Public所拥有。顾名思义,数据库中所有的用户都可以使用公用同义词。公用同义词往往用来标示一些比较普通的数据库对象,这些对象往往大家都需要引用。
2)Oracle私有同义词:它是跟公用同义词所对应,他是由创建他的用户所有。当然,这个同义词的创建者,可以通过授权控制其他用户是否有权使用属于自己的私有同义词。
----公共同义词和用户的schema无关,但是公共的意思并不是所有的用户都可以访问它,必须被授权后才能进行

CREATE SYNONYM、CREATE ANY SYNONYM、CREATE PUBLIC SYNONYM
CREATE [OR REPLACE] [PUBLIC] SYNONYM [ schema.] 同义词名称 FOR [ schema.] object [ @dblink ];
存在同名对象和公共同义词时,数据库优先选择对象作为目标,存在同名私有同义词和公共同义词时,数据库优先选择私有同义词作为目标

Oracle同义词

标签:自己的   分类   授权   占用   介绍   数据字典   两种   目标   用户创建   

原文地址:http://blog.51cto.com/2012ivan/2136071

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!