可能是你的table没有写进去啊?

解决方案 »

  1.   

    你在SQL*PLUS WorkSheet中是不是用的
    CONN Gzd2003/password AS SYSDBA
    连接的?
      

  2.   

    我没用过9i,只用过8.05,8.15,8.17根据经验,应该是没有建立同义词所致请为该表建立同义词,例子如下
    Create Public Synonym SPBUMEN For SHENPI.SPBUMEN;
      

  3.   

    1.同义词是什么什么概念?
    2.Create Public Synonym SPBUMEN For SHENPI.SPBUMEN;中的For SHENPI.SPBUMEN是什么意思?
    3.在SQL*PLUS WorkSheet中我是用CONN Gzd2003/password AS SYSDBA连接的.
      

  4.   

    同义词是什么概念?好像很难回答耶就相当于一个别名吧~~for SHENPI.SPBUMEN是你建立的同义词指向SHENPI.SPBUMEN(未必是表,视图、包、函数都有可能)你访问SPBUMEN 实际上就是访问SHENPI.SPBUMEN
      

  5.   

    同义词也是数据库的对象,说白了也就是用户为Oracle表建立另外的名字。比如说对于一个表a,如果它的拥有者用语句访问它:select * from a;这是可以的。可是如果别的用户(不是a的拥有者)也用select * from a;来访问a,Oracle将不知道该干什么。
    但是如果a的拥有者为该表定义了一个同义词,则别的用户就可以通过这个同义词来访问a。同义词分为私用同义词和公有同义词。对于语句Create Public Synonym SPBUMEN For SHENPI.SPBUMEN;是说定义了一个公用同义词SPBUMEN,For 之后的部分说明任何Oracle用户都可用SPBUMEN引用表SHENPI.SPBUMEN。你出现的问题会不会是你登录的时候用的身份不对呢?
      

  6.   

    你可以试试select * from "techer"
      

  7.   

    select * from "techer"也不行,奇怪的问题.
      

  8.   

    是很怪异啊。你直接在tab表里找找看啊。select * from tab where tname like '%te%'看看能否找到
      

  9.   

    没用过9i,不知道是不是9i的worksheet有问题?和同义词没关系的,因为是自己的table,你用sys进去看能查到嘛?
      

  10.   

    SQL>select owner,table_name,tablespace_name from all_all_tables
    SQL>where table_name='STUDENT';你先用此语句查看一下该表究竟属于哪个用户和表空间,再试试
      

  11.   

    select owner,table_name,tablespace_name from all_all_tables where table_name='STUDENT';的结果是
    OWNER:Gzd2003(正是我用Gzd2003用户在WorkSheet中不能显示的表)
    TABLESPACE_NAME:USERSselect * from tab where tname like '%te%'不能找到表