先说一下情况:
      客户是一家大型医院,他们有自己专门的系统,数据库为oracle10g 编码为US7ASCII模式,现在我们有自己的一套产品需要和客户的oracle10g对接(也就是传说中HIS开发),但是我在自己电脑上利用plsql访问客户的oracle10g数据库进行检索查询的时候是乱码,同时利用我们自己的产品(java+jsp)访问oracle进行数据查询时也是乱码,由于第一次做这样的东东,这方面经验比较欠缺还望高人能给予指点。谢谢了。

解决方案 »

  1.   

    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0"NLS_LANG"值改为"SIMPLIFIED CHINESE_CHINA.ZHS16GBK"修改注册表中的 NLS_LANG的值修改的值需要看你数据库中用的是什么中文字体了可能是ZHS16GBK 也可能是US7ASCII修改的值决定于oracle使用的字库
      

  2.   

    首先谢谢你,我的注册表中有三个
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME1
    HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME2
      

  3.   

    看你的情况,你使用BS构架
    那么你的WEB服务器字符编码需要改,已经页面的字符编码也要改,就可以了
      

  4.   

    能否具体说说呀,我现在用的是ssh2框架
      

  5.   


    我昨天的时候也遇到了同样的问题,不过我是使用sqlplus和plsql连接的时候都是乱码,
    我服务器的编码也和你的一样,我后来把服务器的编码改成了AL32UTF8就可以了,具体的
    操作参考斑竹的收藏
    http://blog.csdn.net/tianlesoftware/archive/2009/12/02/4915223.aspx
      

  6.   

    PL/SQL改注册表不行。
    我这里修改环境变量就可以了
    NLS_LANG=SIMPLIFIED CHINESE_CHINA.US7ASCII