症状:查询中文显示为符号,拷贝后粘贴到文本文件则显示为正常的中文。SQL Plus能够正常显示中文,dbappscfg.properties中设置
SQLPLUS_NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
SQLPLUS_SYSTEMROOT=C:\WINDOWS(我的WINDOWS目录)数据库版本:9i(9.2.0.1)
数据库字符集:AMERICAN_AMERICA.AL32UTF8注册表:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE  NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0  NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK环境变量:
NLS_LANG CHINESE_CHINA.ZHS16GBK另外上述三个NLS_LANG还尝试过
AMERICAN_AMERICA.UTF8 直接显示乱码
AMERICAN_AMERICA.ZHS16GBK 显示情况与SIMPLIFIED CHINESE_CHINA.ZHS16GBK相同,拷贝到文本粘贴正常请教该如何解决?

解决方案 »

  1.   

    将NLS_LANG键值修改就可以了,乱码是因为你的字符集和系统数据库规定的不一致导致的,有的时候你的乱码是符号,而另外一些时候可能会出现"靠靠靠"这样的情况,建议你还是多尝试集中字符集,但是现在最通用的字符集还是SIMPLIFIED CHINESE_CHINA.ZHS16GBK.
    现在很多人都是在Oracle10g的环境下学习使用Oracle,建议你安装10g.不过字符集的问题,不是版本的问题,所以还是更新一下你的字符集在注册表里换一下就可以了
      

  2.   

    我有PL/SQL 的时候只关心HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home1\NLS_LANG 设置  设置好了就么出过什么问题。经常换 NLS_LANG 值也没什么问题啊  保证  NLS_LANG 字符集与开发IDE用的一致就没出过什么问题
      

  3.   

    谢谢了,虽然问题还没解决。
    我的IDE里能够正常显示中文,只是PL/SQL里存在乱码的情况。
    现在直接使用SQLPLUS了。