1、其中有一个table_name写成talbe_name了
2、所有的对象名都是大写的,所以你用where like 小写字母开头的字符串确实找不到纪录select table_name from all_synonyms
 where table_name like 'USER%'
    or table_name like 'ALL%'
 order by table_name;

解决方案 »

  1.   

    谢谢。
    但是修改过以后还是不行
    select table_name from all_synonyms
           where table_name like 'USER%' or table_name like 'ALL%'
    order by table_name
      

  2.   

    应该是权限问题,你用SQL*PLUS以SYSTEM用户登陆试一下
      

  3.   

    to: visc(visc)
    all_synonyms本身就是一个公共同义词,指向的是SYS用户下的一个视图,里面有所有同义词的描述。
      

  4.   

    SQL>select table_name from all_synonyms
        2  where table_name like 'USER%' or table_name like 'ALL%'
        3  order by table_name 
    执行file菜单下的run以后,只添加了一行
        4
    后面无内容
      

  5.   

    在SQLPLUS中输入,然后按回车 :)
    select table_name from all_synonyms
     where table_name like 'USER%' or table_name like 'ALL%'
     order by table_name;SQLPLUS中有RUN的菜单吗?
      

  6.   

    1)desc all_synonyms 后面不需要";"
    但是多行的话需要分号,是这样么?
    2)SQLPLUS->File->Run,但是没什么反应,不知道这个run是干吗的。
    3)运行结果都正确,但是在SqlPlus Worksheet的运行结果中汉字部分为乱码,二sql plus中为简体中文,why?
      

  7.   

    1. desc是SQLPLUS的命令,所以不用;号结束,象这样的命令还有SET
    2. 任何一句SQL语句都必须用;号或另起一样用/符号结尾,不管是单行还是多行
    3. 在注册表ORACLE节点下中加入NLS_LANG=XXXXX, 其中的XXXXX是你的数据库NLS_LANG设定
      

  8.   

    3)是不是可以有其他更好的方法呢?本来就是oracle8i中文版,如果需要在
    注册表里设置的话oracle也有点弱智的说
      

  9.   

    虽然是中文版的,但也可以用各种各样的字符集来生成数据库. ORACLE怎么知道你生成的数据库是用什么字符集的呢? 
      

  10.   

    如果你想让sql*plus执行你写的命令的话,你应该在一个新行上面键入"/"字符,然后回车,就可以了!'