OralcePlsql中⽂显⽰乱码问题⽆需修改注册表完美解决此⽅法在其它版系统也可以解决
win10-64
plsql
oracle 11g绿⾊版客户端
错误现象:
因为oracle⽤的是绿⾊版,⽆法设置注册表,尝试以下⽅法。
解决⽅法:
1、在plsql中查询oracle服务端默认语⾔
select*from v$nls_parameters t where t.PARAMETER ='NLS_LANGUAGE'or t.PARAMETER ='NLS_CHARACTERSET';
-----------------------------------------------------------
plsql配置oracle主目录
select*from nls_session_parameters;
-----------------------------------------------------------
select*from nls_database_parameters;
这⾥的NLS_LANGUAGE=AMERICAN不会影响中⽂显⽰
-------------------------------------------------------------
常⽤语⾔字符查询SQL
select*from v$nls_parameters t where t.PARAMETER ='NLS_LANGUAGE'or t.PARAMETER ='NLS_C
HARACTERSET';
select*from nls_session_parameters;
select*from nls_database_parameters;
select*from nls_instance_parameters;
2、在PLSQL Developer⽬录下新建⼀bat⽂件,内容如下:
@echo off
set path=D:\oracle\product\instantclient_11_2
set ORACLE_HOME=D:\oracle\product\instantclient_11_2
set TNS_ADMIN=D:\oracle\product\instantclient_11_2
set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
运⾏bat⽂件时,打开plsql再次查询数据时正常。
但是遇到问题,从打开plsql时查询再次出现乱码问题。
分析:执⾏bat⽂件启动plsql时重新设置了数据库字符集。
最终解决⽅法:将bat⽂件中的设置全部添加到计算机的“系统变量”中。
验证
将上⾯bat⽂件中的设置添加到“系统变量”后,重新启动plsql查询出中⽂显⽰正常。
注意:bat⽂件中set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK与在plsql中查询oracle服务端默认语⾔是否⼀致。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。