Oracle 用户创建同义词并授权

oracle中对象归属于创建者,其他用户需要操作对象,则需要授权。
通常授权语句如下:
在创建者下执行(其中TABLExxx是需要授权的表,userxxx是被授权者)

GRANT SELECT,UPDATE,INSERT,DELETE ON TABLExxx TO userxxx

但是授权完后,为了方便查询,还需要创建同义词。否则查询还需带上创建者,假设owner是TABLExxx的所有者,没有同义词的情况下,查询如下

select * from owner.TABLExxx

创建同义词的目的是为owner.TABLExxx这个对象起一个通用的别名TABLExxx,使得其他用户查询时不再需要在对象前面带上所有者,一般创建同义词语句如下:

CREATE SYNONYM userxxx.TABLExxx FOR owner.TABLExxx

可通过以下语句查用户对象权限:

SELECT * FROM all_tab_privs t WHERE t.GRANTEE = 'userxxx' AND t.table_name = 'TABLExxx'

可通过以下语句查同义词:

SELECT * FROM SYS.ALL_SYNONYMS t WHERE t.owner = 'userxxx' AND t.table_name = 'TABLExxx'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值