Oracle中文乱码问题

一开始很奇怪中文都成了一个个长方形的格子,感觉到应该是字符编码的问题,但对oracle也不熟啊。所以度娘找啊找。发觉我的服务端字符集与客户端字符集不同。

解决方法记录一下以备后用:

ORACLE有三方面的字符集,一是oracel server端的字符集,二是oracle client端的字符集;三是dmp文件的字符集。

.查看oracel server端的字符集
select userenv('language') from dual;
  1              SIMPLIFIED CHINESE_CHINA.AL32UTF8

服务器端改字符集(百度吧,呵呵,我是新建了一个库选定了ZHS16GBK)

.查看oracel client端的字符集
  是注册表里面相应OracleHome的NLS_LANG。还可以在dos窗口里面自己设置,比如:
  set nls_lang=AMERICAN_AMERICA.ZHS16GBK
  这样就只影响这个窗口里面的环境变量。

  存在HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/NLS_LANG中

------

环境变量里指定使用的字符集 NLS_LANG: SIMPLIFIED CHINESE_CHINA.ZHS16GBK

 

posted @ 2013-07-02 21:50  平安奕程  阅读(333)  评论(0编辑  收藏  举报