用sqlplus 连接oracle11g时汉字显示为???
说是要换客户端的字体,用什么字体库啊。
系统是redhat5+oracle11g

解决方案 »

  1.   

    服务器端用什么字库,客户就用什么字库.请参考:
    http://topic.csdn.net/u/20090111/12/9eb8eacd-17e7-4474-9857-0c4282a2ddcb.html
      

  2.   

    oracle好像是AemUTF32,客户端就是redhat5系统
      

  3.   

    这是你使用的字符集的问题,你的服务器的字符集是什么客户端就应该是什么
    英文字符集:american.us7ascii
    中文字符集:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
      

  4.   

    是字符集的问题,首先确认你数据库使用的什么字符集,然后在你客户端注册表中修改。修改为与数据库相同的字符集就行了。在HKEY_LOCAL_MACHINE\SOFTWARE.ORACLE\HOME0主键下修改
      

  5.   

    来个具体的。 需要在客户端设置NLS_LANG环境变量,如果是unix,可以在.profile之类的文件里面添加环境变量,如:
    export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK其中AMERICAN的地方表示语言,AMERICA的地方表示地区,ZHS16GBK的地方表示字符集,可以根据服务端的设置来确定并进行相应修改。这三个值可以从nls_database_parameters中获取:select *  from nls_database_parameters where parameter in ('NLS_LANGUAGE','NLS_TERRITORY','NLS_CHARACTERSET')
    如果是win,在系统环境变量里面添加NLS_LANG的环境变量,其值即为上面提到的由语言,地区,字符集组成的字符串。