咱们在使用plsql时,有时会遇到数据库跟plsql的编码格式错误,会须要更改编码格式sql
如下是解决方法数据库
原文:http://blog.csdn.net/fmhui879/article/category/954622windows
1、pl/sql developer 中文字段显示乱码
缘由:由于数据库的编号格式和pl /sql developer的编码格式不统一形成的。session
2、查看和修改oracle数据库字符集: oracle
select userenv('language') from dual;ui
查询结果:编码
SIMPLIFIED CHINESE_CHINA.AL32UTF8spa
--修改oracle数据库字符集:(在SQL Plus中).net
sql> conn / as sysdba;rest
sql> shutdown immediate;
database closed.
database dismounted.
oracle instance shut down.
sql> startup mount;
oracle instance started.
total system global area 135337420 bytes
fixed size 452044 bytes
variable size 109051904 bytes
database buffers 25165824 bytes
redo buffers 667648 bytes
database mounted.
sql> alter system enable restricted session;
system altered.
sql> alter system set job_queue_processes=0;
system altered.
sql> alter system set aq_tm_processes=0;
system altered.
sql> alter database open;
database altered.
sql> alter database character set internal_use JA16SJIS;
sql> shutdown immediate;
sql> startup;
3、修改pl/sql developer 的编码格式:
在windows中创 建一个名为“NLS_LANG”的系统环境变量,设置其值为“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,
而后从新启动 pl/sql developer,这样检索出来的中文内容就不会是乱码了。若是想转换为UTF8字符集,能够赋予“NLS_LANG”为 “AMERICAN_AMERICA.UTF8”,而后从新启动 pl/sql developer。其它字符集设置同上