我是oracle的菜鸟,刚开始用它就发现了查询问题。问题描述如下:是备份过来的oracle,想要查询其中几张表,但是发现用SQL*Plus查询不到
SQL> select * from USERS
  2  /
select * from USERS
              *
ERROR at line 1:
ORA-00942: table or view does not exist但是我用exp导出数据时,发现USERS是有5行数据被导出的,这难道不是说有这张表存在吗?哪位大侠指教指教阿~

解决方案 »

  1.   

    呵呵,select * from USERS;oracle 中单条语句
    后腰加分号
      

  2.   

    提示表不存在,
    你使用的是表的所有者?
    加上SCHEMA.表名试试..
    以SYSDBA身份登入查询表的所有者,表名要大写
    select owner ,table_name from all_all_tables where table_name='EMP';
      

  3.   

    这个不是关键啦,提示没有USERS这张表或视图,可是我导出的时候明明有啊~
    呜呜~
      

  4.   

    你可以这样select * from user_tables where table_name=upper('YOUR TABLE NAME');查看是否有该用户下的表
      

  5.   

    users 表为哪个用户帐户所有?在 users 表前加架构限制,如,scott.users可以用下面语句查询:
    select owner,table_name from dba_tables where upper(table_name)='USERS';
      

  6.   

    select * from 所有者.USERS
      

  7.   

    搞定了~太感谢了。
    我是以sys用户登录的oracle,会出现这样的问题是因为表的所有者不是sys?
    sys的权限不是最高的吗?