oracle 同义词public,oracle中private同义词跟public同义词

本文介绍了Oracle数据库中私有同义词和公共同义词的概念及其应用场景。通过示例说明了如何为不同用户创建和使用同义词,以简化表访问过程,特别是当多个用户需要访问同一表时,公共同义词可以提供方便,避免每个用户都需创建私有同义词的繁琐操作。
摘要由CSDN通过智能技术生成

oracle中private同义词和public同义词

项目中遇到,遂从网上搜索了下,觉得如下解释较为通俗易懂:

假设oracle有以下两个用户: admin , visitor

我们在admin下建立了 testtable 这个表,并且对visitor用户赋权

然后我们用visitor登陆 : 查询这个表的时候我们一定需要这样写

select * from admin.testtable

如果直接写 select * from testtable oracle会报错说表不存在

但是我们可以在visitor里建立[私有同义词] 让 testtable = admin.testtable

这样在visitor下就可以直接输入 select * from testtable进行查询

但是如果用户很多的情况下会觉得很麻烦,因为每个用户都需要加[私有同义词] testtable=admin.testtable

所以就出现了 [公有同义词]

直接在admin用户下建立公有同义词 testtable = testtable

这样做好后,所有的用户都可以直接使用

select * from testtable 进行访问而并不需要加前缀,也不用再加[私有同义词]了

项目中例子:

oracle 用户 infsa  下 有表  a,把权限赋给infss用户

在infsa下执行

grant all on a  to  infss ;

create public synonym   inf    for  a;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值