远程数据库,和本地数据库的字符集设置都如下图:
将本地表和远程表关联查询的时候,远程表出现乱码:如何解决,求大虾指点。

解决方案 »

  1.   

    你本地机器上的字符集应该不是utf8吧~具体参考:
    1) 运行sql语句select * from V$NLS_PARAMETERS查看字符集
    (2) 进入注册表,依次单击HKEY_LOCAL_MACHINE --->SOFTWARE ---> ORACLE--->home(oracle版本不同,显示的具体标签可能不一样),找到NLS_LANG,查看数值数据
    (3) 如果以上设置都没有问题,那就要查看下环境变量的设置,查看是否有变量NLS_LANG,没有则新建该变量。新建变量,设置变量名:NLS_LANG,变量值根据以上字符集确定,一般都是中文简体SIMPLIFIED CHINESE_CHINA.ZHS16GBK
      

  2.   

    其实我用的是mysql 只是没有mysql的分类,就发到oracle 大神圈里了。
      

  3.   

    道理应该是一样的,就是你在 GBK 的环境中显示 UTF8 编码的数据
      

  4.   

    无论是mysql还是oracle都存在的一个字符集的问题你要保持两台计算机的字符集是一样的如果楼主是在windows平台下,那去环境变量里设置如果是linux下的计算机,用vi命令修改文件/etc/sysconf/i18n
    设置中文字符可以设置LANG为
    LANG=CHINESE_CHINA.ZHS16GBK
    设置了之后记得使用source /ect/sysconf/i18n
    字符集仅参考,改成你对应的字符集