摘自:https://blog.csdn.net/qw0907/article/details/55188029
(完美解决)PL/SQL显示乱码-无法进行中文条件查询解决
2017年02月15日 08:52:51 快跑蜗牛哥 阅读数:1670
PLSQL乱码问题皆是ORACLE服务端字符集编码与PLSQL端字符集编码不一致引起。
类似乱码问题都可以从编码是否一致上面去考虑。
解决:
1. 查询Oracle服务端字符集编码,获取NLS_CHARACTERSET字段值:
执行
sql代码
select * from v$nls_parameters;
保存查询到的值,如:NLS_CHARACTERSET = AL32UTF8
2. 查询Oracle服务端语言信息:
执行
sql代码
SELECT 'AMERICAN_AMERICA.' || PROPERTY_VALUE
FROM DATABASE_PROPERTIES;
保存查询到的值,如:AMERICAN_AMERICA.AL32UTF8
3. 设置本地环境变量。(PLSQL优先从环境变量中获取属性)
右击 我的电脑 -> 属性 -> 告警系统属性 -> 高级 -> 环境变量 -> 系统变量栏
新增如下两条记录:
NLS_CHARACTERSET = AL32UTF8
NLS_LANG = AMERICAN_AMERICA.AL32UTF8
4. 重启PLSQL,OK。