Oracle 同义词 synonym

同义词:

对另一个数据对象而言同义词是一个别名,同义词对其目标对象进行依赖,如果目标对象被更改或删除,则该同义词将变为无效。

同义词不能代替数据库对象的特权,即先用对模式的对象有查询、执行、删除等权限。

权限:

要在自己的模式中创建私有同义词,您必须具有CREATE SYNONYM系统特权。

要在另一个用户的模式中创建私有同义词,您必须具有CREATE ANY SYNONYM系统特权。

要创建PUBLIC同义词,您必须具有CREATE PUBLIC SYNONYM系统特权。

表的同义词

CREATE   SYNONYM   offices    FOR hr.locations;

存储过程的同义词

create or replace synonym SP_INSERTXY for ys_adm.SP_INSERTXY;

      grant execute on SP_INSERTXY to ys_app

示例:

如果用户oa有 offices表对象,且对hr的offices表有查询权限,那么select  * from  offices时,查询的是自己的数据。如果要查hr模式,需要select  * from  hr.offices

如果户oa没有 offices表对象,且对hr的offices表有查询权限,通过创建同义词CREATE   SYNONYM   offices    FOR hr.offices;执行select  * from  offices;系统返回是hr用户的数据。

 

时间: 2024-10-27 19:52:12

Oracle 同义词 synonym的相关文章

[转]oracle 同义词 synonym

本文转自:http://blog.csdn.net/generalfu/article/details/7906561 同义词定义 当一个用户想访问另外一个用户的表时, 需要在表前加用户名,总加表名不方便, 为此可以为用户名.表名起个小名别名, 以方便访问,此别名就是同义词.创建同义词 create synonym  同义词名  for 用户名.表名称; 删除同义词 drop  synonym  syn_name; 测试实例 --没有创建同义词之前 [sql] view plaincopypri

Oracle数据库之同义词(SYNONYM)使用

本教程用示例来说明在Oracle数据中如何创建和删除同义词(SYNONYM). 概念 同义词是指数据库对象(表.视图.序列.存储过程等数据库对象)用另一个名字来引用.比如: 建立一个同义词可以排除一个对象名字的限制. 如果你的数据库有多个用户,USER_A要访问USER_B的TABLE1,只能使用USER_B.TABLE1 建一个同义词abc指向USER_B.TABLE1,那你就可以select * from abc了,而且public的同义词会直接出现在所有用户的面前,开发不就方便多了 创建同

ORACLE 同义词(SYNONYM)详解

以下内容整理自Oracle 官方文档 一 概念 A synonym is an alias for any table, view,materialized view, sequence, procedure, function, package, type, Java classschema object, user-defined object type, or another synonym. Because a synonymis simply an alias, it requires

oracle同义词创建(synonym)

plsql developer -- Create the synonym create or replace synonym AC59 for GGYW_QY.AC59; 同义词概念 Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能.同义词是数据库对象的一个别名,经常

Oracle同义词概念

Oracle同义词 Oracle的同义词(synonyms)跟View功能类似,但更强大.在Oracle数据库中的大部分数据库对象,如表.视图.物化视图.序列.函数.存储过程.包.同义词等等都可以做为同义词.其目的主要有2个:用于简化对象访问和提高对象访问的安全性. 下面简单做个演示: SQL> conn scott/tiger Connected. SQL> create table test1 (id number); Table created. SQL> insert into

Oracle中synonym和index

笔记: Oracle-同义词--通过用户名(模式名).表名       --授权:grant create synonym to test1(system用户下授权))     --私有  create or replace synonym sy_test1 for gcs95.test1;  --共有  create public synonym public_sy_test1 for gcs95.test1;  /*私有:其他用户无法访问*/  select * from sy_test1;

Crodys 使用Oracle同义词解决方案

以展现流程业务信息列表为例,介绍使用Oracle同义词解决方案. 在Oracle数据库BPM_SUN用户中有如下对象: 对象名称 类型 说明 sun_biz_base table sub_focusprocess table sub_biz_info synonym create synonym SUN_BIZ_INFO for BPM_MANAGER.BIZ_INFO; 查询列表SQL语句如下所示: select a.title,to_char(a.live_date,'yyyy-mm-dd'

Oracle同义词创建及其作用

Oracle的同义词(synonyms)从字面上理解就是别名的意思,和试图的功能类似,就是一种映射关系.本文介绍如何创建同义词语句,删除同义词以及查看同义词语句. oracle的同义词总结: 从字面上理解就是别名的意思,和试图的功能类似.就是一种映射关系. 1.创建同义词语句: create public synonym table_name for user.table_name; 其中第一个user_table和第二个user_table可以不一样. 此外如果要创建一个远程的数据库上的某张表

ORACLE同义词总结

作者:潇湘隐者 出处:http://www.cnblogs.com/kerrycode/ 同义词概念 Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能.同义词是数据库对象的一个别名,经常用于简化对象访问和提高对象访问的安全性.在使用同义词时,Oracle数据库将它翻译成