oracle中文数据显示乱码--字符集修改方法

  1. 问题描述:
    安装了oracle数据库以后, 表中的中文数据显示为乱码;
    网上查了资料, 原因是oracle字符集没有设置对.

SQL> select userenv(‘language’) from dual;
USERENV(‘LANGUAGE’)
AMERICAN_AMERICA.WE8MSWIN1252

执行上述SQL语句查到当前oracle语言环境变量为:AMERICAN_AMERICA.WE8MSWIN1252
如果要支持中文, 应该为:AMERICAN_AMERICA.ZHS16GBK

 2. 问题原因:
 安装oracle时在配置/home/oracle/.bash_profile时, 语言变量没设置, 导致了这个问题, 应在该配置文件中加入以下行:
 export NLS_LANG=“SIMPLIFIED Chinese_CHINA.ZHS16GBK”

 3. 解决办法:
问题是,我oracle已经装好了, 怎么更改呢?
查了下oracle 8g 以上都可以改的,以下是操作步骤:
<1>.首先 sqlplus登录后,关闭oracle数据库:shutdown immediate
<2>.startup mount
<3>.alter  system enable restricted session
<4>.alter  system  set  JOB_QUEUE_PROCESSES=0
<5>.alter  system  set  AQ_TM_PROCESSES=0
<6>.alter  database   open
<7>.alter  database character set INTERNAL_USE ZHS16GBK
<8>.shutdown immediate
<9>.startup

4.设置客户端环境变量:
export NLS_LANG="SIMPLIFIED Chinese_CHINA.ZHS16GBK"
export LANG=zh_CN.GBK

[参考链接](http://www.linuxidc.com/Linux/2011-04/34359p2.htm)

你可能感兴趣的:(数据库)