场景一:公共同义词创建后未给其他用户查询权限
![-5504:没有[%s]对象的查询权限](https://www.wlkjzx.com/wp-content/themes/justnews/themer/assets/images/lazy.png)
--SYSDBA用户
create PUBLIC synonym BB FOR SYSDBA.EXTERNAL_DATA_CTL;
--TEST用户查询
SELECT * FROM BB
总共1个语句正依次执行...
[执行语句1]:
SELECT * FROM BB
执行失败(语句1)
-5504: 没有[EXTERNAL_DATA_CTL]对象的查询权限
1条语句执行失败
原因分析:没有给TEST用户授权BB同义词或者是同义词的实际表EXTERNAL_DATA_CTL的查询权限。
解决:SYSDBA授权即可
--SYSDBA用户
GRANT SELECT ON BB TO TEST;
--或者授权该同义词的实际表的查询权限
GRANT SELECT ON SYSDBA.EXTERNAL_DATA_CTL TO TEST;
--TEST用户
SELECT * FROM BB
执行成功, 执行耗时6毫秒. 执行号:1113
----回收:revoke SELECT on SYNONYM BB FROM TEST;
----回收:revoke SELECT on TABLE EXTERNAL_DATA_CTL FROM TEST;
原创文章,作者:lzb,如若转载,请注明出处:https://www.wlkjzx.com/2023/07/07/5504%ef%bc%9a%e6%b2%a1%e6%9c%89s%e5%af%b9%e8%b1%a1%e7%9a%84%e6%9f%a5%e8%af%a2%e6%9d%83%e9%99%90/