操作系统:RHEL5.4 Oracle版本:10.2.0
客户端NLS_LANG编码如下:
[oracle@supertiger ~]$ echo $NLS_LANG
AMERICAN_AMERICA.ZHS16GBK
执行locale查看系统编码如下:
[oracle@supertiger ~]$ locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
数据库字符集如下:PARAMETER VALUE
-------------------- --------------------
NLS_CHARACTERSET ZHS16GBK1、上述系统环境下使用sqlplus登录数据库,提示符“connect to / 连接到”的地方出现???乱码,如下所示:
Enter user-name: system
Enter password: ???:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options2、登录数据库成功后查询数据库表中记录,中文记录出现乱码如下所示:
SQL> select * from gb_fkfs;DM MC SRM
-- ---------------------------------------- ----
1 ????????(??????????) sb
2 ???? sybx
3 ???? zfyl
4 ???? gfyl
5 ???? dbtc
6 ?? qt???6??
请问上述乱码问题如何解决??最好能说明一下产生乱码的原因!呵呵,近两天在网上参考了好些资料把头看晕了得!!!谢谢了,请帮忙解答下
客户端NLS_LANG编码如下:
[oracle@supertiger ~]$ echo $NLS_LANG
AMERICAN_AMERICA.ZHS16GBK
执行locale查看系统编码如下:
[oracle@supertiger ~]$ locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=
数据库字符集如下:PARAMETER VALUE
-------------------- --------------------
NLS_CHARACTERSET ZHS16GBK1、上述系统环境下使用sqlplus登录数据库,提示符“connect to / 连接到”的地方出现???乱码,如下所示:
Enter user-name: system
Enter password: ???:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options2、登录数据库成功后查询数据库表中记录,中文记录出现乱码如下所示:
SQL> select * from gb_fkfs;DM MC SRM
-- ---------------------------------------- ----
1 ????????(??????????) sb
2 ???? sybx
3 ???? zfyl
4 ???? gfyl
5 ???? dbtc
6 ?? qt???6??
请问上述乱码问题如何解决??最好能说明一下产生乱码的原因!呵呵,近两天在网上参考了好些资料把头看晕了得!!!谢谢了,请帮忙解答下
解决方案 »
- 请教关于DBWR进程的几个问题
- oracle找不到数据 问题的解决
- 首次提问:Oracle数据库能完全导入到一个sql server中么?包括触发器。
- 转oracle DBA 请高手指点一二
- ORACLE APEX中无法在sql中调用存储过程
- for update of empno 是什么意思啊?
- 高分相送,实现以下功能的触发器怎样写?
- 请问oracle for linux 免费版,与收费版有什么区别
- 大家知不知道单CPU的企业版和标准版的Oracle 9i、DB2 v7.2和SQL 2000实际可以多少价钱买到??(正版)
- pl/sql导入dmp文件到一半出错了(命令窗口自动退出了)
- oracle连接提示“监控程序无法启动专用的服务器进程”,在线等......
- 关于mysql的一个对表分区的基本问题,大家进来看看。
你在试试在你登陆用户的.profile文件里面加上NLS_LANG=AMERICAN_AMERICA.ZHS16GBKexport NLS_LANG
sqlplus / as sysdba试试看。
因此从服务器向客户端发送数据时不会进行相应的字符转换
但是你OS的字符集是UTF8 显示上也许会有问题你可以尝试把客户端NLS_LANG设置为AMERICAN_AMERICA.UTF8
再试试看
设成export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" 这样之后乱码变成了如下所示:
SQL*Plus: Release 10.2.0.1.0 - Production on ������ 2�� 7 00:02:46 2010Copyright (c) 1982, 2005, Oracle. All rights reserved.
���ӵ�:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
是乱码还是问号
如果不是,就是字符设置的问题!上面看来,很显然中文乱码,是不支持中文的!