欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

oracle查询有关问题

更新时间: 2014-01-05 02:12:31 责任编辑: Author_N1

 

Oracle查询问题求助
通过toad连接oracle数据库,无意中发现的一个问题,个人搜索资料未果,向广大朋友请教,问题描述:
执行语句 select * from Tzj_dss(简单的查询) 通过toad连接数据库,用户以sysdba的身份登录,则报错“ORA-00942: 表或视图不存在”,但事实上数据库中存在该表!还是通过toad连接数据库,这次用户以normal身份登录,执行同样的语句就可以查询到,直接通过sql/plus也可以查询得到,请教一下大家,这个是怎么回事?自己搜的答案,有的说是权限的问题,但是在创建用户的时候直接赋予的dba权限,希望大家能帮小弟一下,不胜感激
--参考方法--
select * from 登录名.Tzj_dss 试下
--参考方法--
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

select * from 登录名.Tzj_dss 试下
我按照你说的方法可以查询到,请问一下,这是什么原因呢?
select * from Tzj_dss这样默认会是(select * from 当前登录用户名.Tzj_dss),而如果Tzj_dss表不是当前用户所有的就会报错。
表到底是哪个用户的,如果是normal用户的,以Normal用户登录查自己的表直接可以select * from Tzj_dss,sysdba用户登录查看就要select * from Normal用户名.Tzj_dss。

朋友,按照你解释的意思,是不是可以这样理解:两次登录使用的都是同一个用户名(同一个用户),只是以不同的身份登录了,这意味着是两个用户?我按照你说的select * from dba_objects where object_name='TZJ_DSS_CODES'进行了查询,得到的信息显示,表的owner_name就是登录的用户名,只是两次身份不同,并且不管用那种身份登录,都可以在查看表的面板中看到tzj_dss_codes这张表,请问这又如何理解呢?通过sql/plus就能查询到表信息,这又是为何呢?

两次登录使用的都是同一个用户名,这样的话,我就没法解释了
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:12:31
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6962/
本文WWW.DOC100.NET DOC100.NET版权所有。