PLSQL显示乱码-无法进行中文条件查询解决
原因:
PLSQL乱码问题皆是ORACLE服务端字符集编码与PLSQL端字符集编码不一致引起。类似乱码问题都可以从编码是否一致上面去考虑。
解决:
1. 查询Oracle服务端字符集编码,获取NLS_CHARACTERSET字段值:
执行
1
2
|
sql代码 select * from v$nls_parameters |
保存查询到的值,如:NLS_CHARACTERSET = AL32UTF8
2. 查询Oracle服务端语言信息:
执行
1
2
3
4
|
sql代码 NLS_CHARACTERSET SELECT 'AMERICAN_AMERICA.' || PROPERTY_VALUE FROM DATABASE_PROPERTIES |
保存查询到的值,如:AMERICAN_AMERICA.AL32UTF8
3. 设置本地环境变量。(PLSQL优先从环境变量中获取属性)
右击 我的电脑 -> 属性 -> 告警系统属性 -> 高级 -> 环境变量 -> 系统变量栏
新增如下两条记录:
1
2
3
|
NLS_CHARACTERSET = AL32UTF8 NLS_LANG = AMERICAN_AMERICA.AL32UTF8 |
4. 重启PLSQL,OK。