问题:
在PLSQL端对Oracle数据库里的某个表进行条件查询时,查询条件为中文,如:
select * from 表名 where 字段=‘中文汉字’;
明明有记录,但是查询不到。
原因:
Oracle服务端字符集编码与PLSQL端字符集编码不一致。
解决:
1、执行如下sql:
select userenv('language') from 表名;
查询字符集编码如下:
AMERICAN_AMERICA.AL32UTF8
2、点击“计算机”,右击选择“属性”,在界面上点击“高级系统设置”,选择“高级”,点击“环境变量”,新建一个系统变量,变量名为“NLS_LANG ”,变量值为“AMERICAN_AMERICA.AL32UTF8”,该值与上一中查询到的结果一致。
3、重启PLSQL。