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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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就不会有中文乱码了。
参考技术A 设置过NLS_LANG环境变量了么?

试试 export NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

后再查一下?

以上是关于sql server2005远程连接oracle11g查询结果中文乱码,怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章

在远程服务器上的sql server2008连接不上

SQL SERVER2000不允许远程连接问题

SQL server 2005 无法连接到服务器?

如何用SQL SERVER 2005连接SQL SERVER 2008

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

如何远程连接sqlserver,提示是“不存在或访问被拒绝”