sql server2005远程连接oracle11g查询结果中文乱码,怎么解决?

openquery查询oracle的数据,结果中文全部是乱码。sqlserver 的排列规则是Chinese_PRC_CI_AS,oracle11g的字符集是AMERICAN_AMERICA.AL32RTF8。
请问要怎么才能让中文不乱码啊?
打错了,是AMERICAN_AMERICA.AL32UTF8。

远程连接oracle11g查询结果中文乱码是客户端和服务端编码设置不同引起的。
1、检查windows7下面cmd里面sqlplus中oracle server端的字符集。
打开cmd,用sqlplus登录,输入下面SQL查询服务端的字符集。
2、去后台linux查看字符集编码,
(1),查看profile文件
[oracle@powerlong4 ~]$ vim/home/oracle/.bash_profile
export LANG=en_US.gbk
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
(2),查看数据库的userenv
SQL> select userenv('language') fromdual;
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK
改成ZHS16GBK就不会有中文乱码了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-03-25
设置过NLS_LANG环境变量了么?

试试 export NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

后再查一下?本回答被网友采纳

sql server2005远程连接oracle11g查询结果中文乱码,怎么解决?
1、检查windows7下面cmd里面sqlplus中oracle server端的字符集。打开cmd,用sqlplus登录,输入下面SQL查询服务端的字符集。2、去后台linux查看字符集编码,(1),查看profile文件 [oracle@powerlong4 ~]vim\/home\/oracle\/.bash_profile export LANG=en_US.gbk export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK ...

相似回答