Oracle数据库在plsql中文乱码,显示问号????

1.错误显示结果:

2.错误的原因:

SqlPlus乱码与操作系统用户中的NLS_LANG这个环境变量有关系,如果这个与数据库字符集不一致的话就会产生乱码

3.解决方法1:(配置环境变量)

  1.select userenv(‘language‘) from dual;

  2.select * from V$NLS_PARAMETERS;//第一个值是否为中文

  3.设置系统环境变量变量名:NLS_LANG    变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

4.解决方法2(配置注册表)

  1.cmd -----regedit---打开注册表

  2.依次单击HKEY_LOCAL_MACHINE--->SOFTWARE ---> ORACLE--->KEY_OraDb11g_home1(不同版本的Oracle显示的都不太一样,但都会包含home这个单词),找到“NLS_LANG”,查看数值数据是否为:“SIMPLIFIED

CHINESE_CHINA.ZHS16GBK”,如果不是就将它设置为“SIMPLIFIED CHINESE_CHINA.ZHS16GBK。”

5.总结:关于编码的问题今天弄了好久,开始只看了注册表,但是注册表根本就没有oracle目录,以为自己的安装时错误的但是,经过我自己的反复的思考,确定不是安装的问题,然后把问题就转到配置上来了,最后看了一些博客终于在环境变量上解决了这个问题,但是呢,并不是配置好了就可以重新启动就可以改变乱码的,而是要重新插入数据就可以刻看到正常显示中文了。

作者:何秀好

2019-03-1417:46:25

原文地址:https://www.cnblogs.com/itboxue/p/10531859.html

时间: 2024-10-08 00:57:57

Oracle数据库在plsql中文乱码,显示问号????的相关文章

PLSQL:plsql中文乱码,显示问号

问题:PLSQL:plsql中文乱码,显示问号  如图 解决方法: 1.查看 select * from V$NLS_PARAMETERS  查看表中第一行value值是否为简体中文  如图 2.查看注册表  找到NLS_LANG,查看数值数据是否为:SIMPLIFIED CHINESE_CHINA.ZHS16GBK  如图 3.如果以上设置都没有问题,那就要查看下环境变量的设置,查看是否有变量NLS_LANG,如果没有新建该环境变量  如图 重新启动PL/SQL就可以了!

plsql中文乱码显示问号的解决办法

问题现象:  PLSQL执行sql语句,不识别中文,输出的中文标题显示成问号????. 解决办法: 1. 登陆plsql,执行sql语句,输出的中文标题显示成问号????:条件包含中文,则无数据输出:查询出的内容含有中文显示成????. 2.输入sql语句select * from V$NLS_PARAMETERS t WHERE t.PARAMETER='NLS_LANGUAGE'查看字符集,查看value值是否为简体中文. 3.进入注册表,依次单击HKEY_LOCAL_MACHINE ---

PLSQL:[1]plsql中文乱码,显示问号

PLSQL运行sql语句,不识别中文.输出的中文标题显示成问号?? ?? 工具/原料 PLSQL Developer 9 方法/步骤 1 登陆plsql,运行sql语句.输出的中文标题显示成问号????.条件包括中文.则无数据输出 2 输入sql语句select * from V$NLS_PARAMETERS查看字符集,查看第一行value值是否为中文简体 picindex=2" target="_self" style="background-color:inhe

PLSQL:中文乱码,显示问号

1.查看下环境变量的设置,查看是否有变量NLS_LANG,没有则新建该变量2.新建变量,设置变量名:NLS_LANG,    变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK,确定即可3.退出plsql,重新登陆plsql.输入sql语句,执行,中文标题终于正常显示,也有数据输出了

ORACLE 11G中PLSQL中文显示乱码、Linux下sqlplus查询中文乱码

问题描述: 本地是win7操作系统,cmd里面sqlplus进去连接oracle数据库,中文可以正常显示,但是plsql连接oracle数据库,中文显示乱码,还有xshell远程连接oracle服务器登录进去使用sqlplus登录也显示中文乱码. 1.检查windows7下面cmd里面sqlplus中oracle server端的字符集. 打开cmd,用sqlplus登录,输入下面SQL查询服务端的字符集. SQL> select userenv('language') fromdual; US

解决openfire在使用MySQL数据库后的中文乱码问题(转)

openfire是一个非常不错的IM服务器,而且是纯Java实现,具有多个平台的版本,他的数据存储可以采用多种数据库,如MySQL,Oracle等. 在实际使用时大家遇到最多的就是采用MySQL数据库后的中文乱码问题,这个问题十分有趣,而且从现象上可以看出openfire内部的一些机制. 实际问题是这样的:首先启动openfire服务器,然后利用客户端或直接登录到后台新建一个帐户,为该帐户指定一些中文的属性,如姓名等.如果不重启服务器,你永远不会觉得有什么不对的地方,因为所有的中文显示都是正常的

解决Ubuntu系统中文乱码显示问题,终端打开文件及查看目录

解决Ubuntu系统中文乱码显示问题 [日期:2014-02-20] 来源:Linux社区  作者:njchenyi [字体:大 中 小] 我是先安装了Ubuntu 12.04 Server,然后安装桌面.进入以后发现中文有问题. 解决方法:一. Ubuntu默认的中文字符编码Ubuntu默认的中文字符编码为zh_CN.UTF-8,这个可以在/etc/environment中看到:sudo gedit /etc/environment可以看到如下内容:PATH="/usr/local/sbin:

plsql部分字段中文乱码,plsql中文乱码

PLSQL中文乱码 问题: 解决: 思路1:设置 export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" 结果:并不能解决问题!            思路2:设置 export NLS_LANG=AMERICAN_AMERICA.UTF8 export LANG=en_US.UTF-8 结果:出现了和plsql一样的问题 最后发现,这些乱码是从mysql导入进来的,后来插入的数据没问题!!!

操作Oracle数据库,插入数据时显示:ORA-00984列在此处不允许错误

操作Oracle数据库,插入数据时显示:ORA-00984列在此处不允许错误,如下图所示: 出现的原因是由于,在插入字符或字符串型字段时.如果插入的数据是纯数字,则不会有错误:如果出现字符,则会报ORA-00984列在此处不允许异常. 可以创建TestUser表,如下: create table TestUser ( usercode char(5), username varchar2(20) ) 以下例子请注意第一个字段usercode的值 1.正常例子:usercode为纯数字.可以正常插