oracle 用户创建了同义词后,提示查不到表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 用户创建了同义词后,提示查不到表相关的知识,希望对你有一定的参考价值。

oracle 用户B中新建了表table1,用户A添加table1的同义词后,提示查不到表。但是之前用户C创建的table1同义词是能查到的

参考技术A 用A用户执行下
select * from User_Synonyms
看看建好的到底是什么名字追问

就是这个语句都能找出来的,但是没用
名字绝对没问题,都是复制黏贴的

参考技术B 你创建的是啥类型同义词? 公用还是私有?本回答被提问者采纳

oracle 赋予权限后,查询却显示表或视图不存在

scott使用grant all on emp to xiaohong;将权限设置给小红后,使用小红登录,使用select * from emp;查询时显示表或视图不存在?

到底怎么操作,才能让另一个用户访问scott授权的表?我缺了哪些步骤?

使用建表用户名.表名来查询
select * from scott.emp;
如果要不带建表用户名,需要建同义词
create public synonym emp for scott.emp;
这样用xiaohong 登陆后就可以使用 select * from emp; 来查询数据了
参考技术A 你的权限赋予没问题,访问方式的问题
xiaohong应该这样访问:
select * from scott.emp;本回答被提问者采纳
参考技术B 来迟了,楼上已经说明了一切

以上是关于oracle 用户创建了同义词后,提示查不到表的主要内容,如果未能解决你的问题,请参考以下文章

Oracle创建用户和表空间后在Navicat中看不到,也不能连接

oracle 查看同义词

oracle 赋予权限后,查询却显示表或视图不存在

oracle 授权select 给别的用户后,为啥select的时候,还要加上表拥有者的用户名。

oracle 中怎么创建同义词?

oracle 创建所有表的同义词