在使用PL/SQL时经常出现SELECT表时,明明有符合条件的数据,但是在WHERE语句中的LIKE中文查询不到结果。
解决办法如下:
1、打开一个SQL Window 执行查询语句“select * from v$nls_parameters ;”得到查询结果如下,
1
NLS_LANGUAGE AMERICAN
2 NLS_TERRITORY
AMERICA
3 NLS_CURRENCY
$
4 NLS_ISO_CURRENCY
AMERICA
5 NLS_NUMERIC_CHARACTERS
.,
6 NLS_CALENDAR
GREGORIAN
7 NLS_DATE_FORMAT
DD-MON-RR
8 NLS_DATE_LANGUAGE
AMERICAN
9 NLS_CHARACTERSET
AL32UTF8
10 NLS_SORT
BINARY
11 NLS_TIME_FORMAT
HH.MI.SSXFF AM
12 NLS_TIMESTAMP_FORMAT
DD-MON-RR HH.MI.SSXFF AM
13 NLS_TIME_TZ_FORMAT
HH.MI.SSXFF AM TZR
14 NLS_TIMESTAMP_TZ_FORMAT
DD-MON-RR HH.MI.SSXFF AM TZR
15 NLS_DUAL_CURRENCY
$
16 NLS_NCHAR_CHARACTERSET
AL16UTF16
17 NLS_COMP
BINARY
18 NLS_LENGTH_SEMANTICS
BYTE
19 NLS_NCHAR_CONV_EXCP
FALSE
2、注意上述加粗字体部分。然后在设置本地Windows环境变量,分别加入如下两个环境变量。
NLS_CHARACTERSET = AL32UTF8
NLS_LANG = AMERICAN_AMERICA.AL32UTF8
3、重启PL/SQL即可。
版权声明:本文为博主原创文章,未经博主允许不得转载。