1.将v$instance的select权限赋予需要使用sqlplus的用户
  grant  select on v$instance to public;
2.将如下的代码添加到login.sql中set termout off
select 
host_name || ':' || instance_name || ':' || user || '>' prompter
from v$instance;set sqlprompt '&m_prompt'
undefine m_prompt
set termout on

解决方案 »

  1.   

    sorry, grant  select on v$instance to public; 是不正确的,应该为:
     
     grant select_catalog_role to public;
      

  2.   

    grant select on v_$instance to public;
      

  3.   

    我刚刚试了一下,正确做法
    1:
    connect sys/change_on_install
    grant  select  on  v_$instance  to  public;  
    2:修改$oracle_home$\sqlplus\admin下面的login.sql
    增加以下语句:
    set  termout  off
    COLUMN prompter new_value m_prompt 
        
    select  host_name ||  ':' || instance_name || ':' || user || '  >' prompter  
    from  sys.v_$instance; 
    set  sqlprompt  '&m_prompt' 
     
    set  termout  on  登录效果:
    SUN:oral:TEMP  >OK!
      

  4.   

    不想說什麼了,樓主要麼是ORACLE玩膩了,要麼就是真正的ORACLE迷
      

  5.   

    多做点别的实际点的事吧,搞这东西提高不了oracle水平的.
      

  6.   

    column global_name new_value gname
    set termout off
    select lower(user)||'@'||substr(global_name,1,instr(global_name,'.')-1) global_name from global_name;
    set sqlprompt '&gname>'
    set termout on
    加在login.sql中