| 
 解决方法:     第一步:sqlplus下执行:select userenv('language') from dual;//查看oracle字符集      注:如果oracle字符集与后台代码设置的字符集不一致就会出现乱码     第二步:修改SYS.PROPS$表。即用SYS用户登陆ORACLE后,利用下面语句修改相应的字符集并提交:SQL>UPDATE PROPS$ SET VALUE$=’ZHS16GBK‘WHERE NAME=’NLS_CHARACTERSET’;SQL>COMMIT;
      通过此种方法来更改数据库字符集,只对更改后的数据有效,即数据库中原来的数据仍以原字符集被存储。    注:使用sys登陆的密码是manager   连接方式为 sysdba  
   注:查询数据库字符集(oracle server 端 字符集查询):oracle: select userenv(’language’) from dual;  --查询的是Oracle服务器端字符集
  原文链接---------http://wenda.so.com/q/1408152629727270?src=110  
   
数据库字符集修改案例:  
Microsoft Windows [版本 10.0.14393] (c) 2016 Microsoft Corporation。保留所有权利。
  C:\WINDOWS\system32>sqlplus /nolog
  SQL*Plus: Release 11.2.0.1.0 Production on 星期一 12月 19 09:29:31 2016
  Copyright (c) 1982, 2010, Oracle.  All rights reserved.
 
  SQL> conn /as sysdba 已连接。 SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';
  PARAMETER ------------------------------------------------------------ VALUE -------------------------------------------------------------------------------- NLS_CHARACTERSET AL32UTF8
 
  SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 SQL> startup mount; ORACLE 例程已经启动。
  Total System Global Area 3390558208 bytes Fixed Size                  2180464 bytes Variable Size            2013268624 bytes Database Buffers         1358954496 bytes Redo Buffers               16154624 bytes 数据库装载完毕。 SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
  系统已更改。
  SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
  系统已更改。
  SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
  系统已更改。
  SQL> alter database open;
  数据库已更改。
  SQL> ALTER DATABASE CHARACTER SET ZHS16GBK; ALTER DATABASE CHARACTER SET ZHS16GBK * 第 1 行出现错误: ORA-12712: 新字符集必须为旧字符集的超集
 
  SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
  数据库已更改。
  SQL> shutdown immediate; 数据库已经关闭。 已经卸载数据库。 ORACLE 例程已经关闭。 SQL> startup; ORACLE 例程已经启动。
  Total System Global Area 3390558208 bytes Fixed Size                  2180464 bytes Variable Size            2013268624 bytes Database Buffers         1358954496 bytes Redo Buffers               16154624 bytes 数据库装载完毕。 数据库已经打开。 SQL>  |