解决PLSQL查不到带中文条件的记录
来源:互联网 发布:java jar classpath 编辑:程序博客网 时间:2024/04/29 23:48
设置环境变量 重启PLSQL
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
原因:
客户端与服务器端编码不一致
了解下NLS_LANG的知识
NLS_LANG 参数组成
NLS_LANG=<Language>_<Territory>.<Clients Characterset>
查看oracle服务端编码:select * from sys.nls_database_parameters;
从下面服务端 编码我们可以得到: NLS_LANG = AMERICAN_AMERICA.AL32UTF8
查看oracle服务端编码:select * from sys.nls_database_parameters;
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET AL32UTF8
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_RDBMS_VERSION 11.2.0.1.0
查看client编码 :select * from sys.nls_session_parameters;
NLS_LANGUAGE SIMPLIFIED CHINESE
NLS_TERRITORY CHINA
NLS_CURRENCY ¥
NLS_ISO_CURRENCY CHINA
NLS_NUMERIC_CHARACTERS .,
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE SIMPLIFIED CHINESE
NLS_SORT BINARY
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY ¥
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
明显客户端的编码和服务器端 的不一致!!!!解决办法:
设置环境变量 重启PLSQL
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
此方法也适合用exp imp !以免中文有乱码出现!或部分数据乱码!
WINNT> set NLS_LANG=AMERICAN_AMERICA.AL32UTF8
LINUX> export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
查看 NLS_LANG 的方法
Windows使用:echo %NLS_LANG%
C:\Users\Administrator>echo %NLS_LANG%
AMERICAN_AMERICA.AL32UTF8
修改db编码的办法:(在oracle 11g上通过测试) --风险操作....最好不要用!!!!!!!!
SQL> conn system as sysdba;
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter system enable restricted session;
SQL> alter system set job_queue_processes=0;
SQL> alter database open;
SQL> alter database character set internal_use AL32UTF8;
SQL> shutdown immediate;
SQL> startup
另外如果PLSQL查看结果乱码 可能是字体的问题 :请见
http://blog.csdn.net/qq378527566/article/details/7816768
- 解决PLSQL查不到带中文条件的记录
- 解决PLSQL查不到带中文条件的记录
- PLSQL带中文条件查询无法读出记录
- PLSQL带中文条件查询无法读出记录
- plsql查询带中文的sql语句查询不到数据
- plsql中,sql语句中带有中文的查询条件查询不到数据
- PLSQL无法进行中文条件查询解决
- 以中文为查询条件查询mysql数据库时有数据却查不到数据或者中文乱码的问题
- Linux下安装的mysql数据库插入中文乱码或sql查询语句条件中有中文查不到数据
- ssh提交事务,plsql查不到数据的问题
- Mysql中文查不到数据的问题
- PLSQL显示乱码-无法进行中文条件查询解决
- PLSQL显示乱码-无法进行中文条件查询解决
- PLSQL显示乱码-无法进行中文条件查询解决
- PLSQL显示乱码-无法进行中文条件查询解决
- 对于plsql 连接不到orcale问题的解决
- plsql develop 中文乱码问题的解决
- plsql无法中文条件查询
- Ubuntu 12.04安装Java开发环境
- Java学习笔记25:Java中MD5使用
- libgdx 与 android studio
- Java 学习笔记14:Spring 数据库数据源DBCP配置说明
- 系统支持的集中对话框
- 解决PLSQL查不到带中文条件的记录
- DevExpress右键菜单使用小记
- Linux 使用root 上传
- mysq在Linux下的安装
- Word Search
- 函数MultiByteToWideChar()
- XtraTreelist添加节点图片
- java 线程安全性
- 融为平台提交页面保存的两种方式