18030的确有这种现象。一些web服务器不一定支持。

解决方案 »

  1.   

    应该是字符集的问题把注册表中oracle中所有nls_lang键的值都改成SIMPLIFIED CHINESE_CHINA.ZHS16GBK试试看~~:)
      

  2.   

    怎么样查看数据库字符集 
    [A]数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。 
      客户端字符集环境select * from nls_instance_parameter,其来源于v$parameter, 
    表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表 
      会话字符集环境 select * from nls_session_parameter,其来源于v$nls_parameters,表示会话自己的设置,可能是会话的环境变量或者是alter session完成,如果会话没有特殊的设置,将与nls_instance_parameter一致。 
      客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。如果多个设置存在的时候,alter session>环境变量>注册表>参数文件 
      字符集要求一致,但是语言设置却可以不同,语言设置建议用英文。如字符集是zhs16gbk,则nls_lang可以是American_America.zhs16gbk。
      

  3.   

    把注册表中oracle中nls_lang键的值改成"SIMPLIFIED CHINESE_CHINA.ZHS16CGB231280"试试 
     原来是:“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”
    注册表:运行 regedig 命令
      

  4.   

    同意beckhambobo的观点。1)windows上查看系统代码页:
    d:\chcp  
    活动的代码页:936   即中文字符集GBK
    2)windows客户端NLS_LANG参数在注册表中的设置:
    HKEY_LOCAK_MACHINE\SOFTWARE\ORACLE\HOMEXX\
    把客户端的NLS_LANG和database server的NLS_LANG保持一致:alter database character set ZHS32GB18030