设为首页 加入收藏

TOP

[Oracle]-[同义词]-public与非public同义词
2014-11-24 02:24:54 来源: 作者: 【 】 浏览:0
Tags:Oracle 同义词 -public 与非 public
[ Oracle]-[同义词]-public与非public同义词
[现象]:
Sys账户给bisal账户的t_emp表创建public同义词,bisal用户可以访问t_emp_syn,但scott账户无法查询,select ... t_emp_syn提示表或视图不存在。
SQL> select * from t_emp_syn;
select * from t_emp_syn
*
ERROR at line 1:
ORA-00942: table or view does not exist
[原因]:
Scott没有bisal.t_emp表的访问权限,因此提示表或视图不存在。
[解决]:
使用bisal,执行grant select on t_emp to scott;
使用scott,可以执行t_emp_syn。
SQL> select * from t_emp_syn;
EMPNO EN DEPTNO
---------- -- ----------
1 c 1
2 d 2
3 f 0
10 1 1
12 1a 1
[总结]:
Public同义词,一个用户A若需要访问另一个用户B建立的表的同义词,则需要有用户B该表(也就是基表)的访问权限。
若是普通同义词,DBA用户可以访问任何用户创建的非public同义词,但不同的普通用户之间,除非授予基表的访问权限,否则不能随意访问其它用户的非public同义词,这也是public存在的用途。
可以为一个基本建立多个不同的同义词。
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇oracle同义词、序列、视图用法简析 下一篇oracle同义词详解

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: