oracle 中文乱码
select * from nls_database_parameters 显示nls_lanaguage是AMERICA
select * from nls_instance_parameters 显示也是AMERICA
select * from nls_session_parameters 显示是SIMPLIFIED CHINESE
客户端注册表中的nls_lang 值是 SIMPLIFIED CHINESE_CHINA.ZHS16GBK
请问要怎么改?

解决方案 »

  1.   

    怎样修改查看Oracle字符集 
    http://oracle.chinaitlab.com/induction/37776.html
      

  2.   

    客户端改成与服务器一致就行了, 在当前session中改SQL> alter session set nls_language="AMERICAN";Session altered.如果要将客户端的默认改成AMERICAN, 需要改注册表:
    在注册表中查找NLS_LANG: 
    改成
    AMERICAN_AMERICA.US7SCII

    AMERICAN_AMERICA.ZHS16GBK
    或别的.后面的那个是什么要查看服务器, 用
    SELECT * FROM V$NLS_PARAMETERS;
      

  3.   

    >客户端注册表中的nls_lang 值是 SIMPLIFIED CHINESE_CHINA.ZHS16GBK 就改这个:客户端注册表中的nls_lang
    nls_lang=SIMPLIFIED CHINESE_CHINA.US7ASCII
      

  4.   

    alter system set nls_lang=AMERICAN_AMERICA.ZHS16GBK