改一下 oracle 的默认字符集

解决方案 »

  1.   

    通过InitXXXX.ora文件进行查看; 
    觉得应该改成SIMPLIFIED CHINESE_CHINA.ZHS16GBK,
    借助SQL语句查看: select name, value$ from props$ where name like 'NLS_NLS_NCHAR_CHARACER%'; 
    看看注册表里HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0下的NLS_LANG数值是否为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,不是的话应该改成这个
    不过改了字符集数据库得重建,所以不推荐
      

  2.   

    这跟Oracle Client端的字符集有关。
     假设你在A client设了
    NLS_LANG=AMERICAN_AMERICA.zhs16gbk
    则从A Client写入数据库的中文字符不会有错。
    但如B Client没有设字符集,则从B Client操作Oracle数据库时,完全可能出现乱码。