oracle数据库中编写sql语句后注释中文显示乱码如何解决,但是复制出来就显示中文

oracle数据库中编写sql语句后注释中文显示乱码如何解决,但是复制出来就显示中文,第1张

试试这个

在你oracle的注册表主目录里

一般在

HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->OraDb11g_home(最后这个不定,能有你oracle主目录的就行)

右边的好多值里加个 (新建,字符串)

如果要是有这条,后面不是中文的,把他改成上面的值

如果是64位的在HKEY_LOCAL_MACHINE->SOFTWARE下有个 WOW64那里面有个oracle

按照上面的改,看看能不能改回来

原来程序里面乱码,加了这个就好了,不知道对你有没有帮助

服务器为windows server 2003,正常安装完oracle客户端后,插入数据时,发现中文都是?。

异常:

PLL/SQL中输入select userenv('LANGUAGE') From Dual,结果为AMERICAN_AMERICAUS7ASCII,

注册表中[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OraClient10g_home]下的

NLS_LANG为SIMPLIFIED CHINESE_CHINAZHS16GBK。

解决方法:

我的电脑---右击---属性---高级---环境变量---系统变量---新建

变量名:NLS_LANG

变量值:SIMPLIFIED CHINESE_CHINAZHS16GBK,确定后再试试,OK。

查找注册表

32位在:HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432NODE\ORACLE\HOMExx\NLS_LANG(这里是32位的应用程序在64位windows系统中,注册表位置在"WOW6432NODE"下。)64位在:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG(这里是64位的应用程序在64位windows系统中,注册表位置直接在"SOFTWARE"下。)所以修改客户端NLS_LANG需要看清注册表地址。切记。解决方法:将服务器的DB客户端的NLS_LANG改为SIMPLIFIED CHINESE_CHINAAL32UTF8将笔记本的DB客户端的NLS_LANG也改为SIMPLIFIED CHINESE_CHINAAL32UTF8这样笔记本DB客户端输入中文的时候,编码会转为AL32UTF8。服务器上客户端也能对应解码。如果将笔记本DB客户端NLS_LANG设置为ZHS16GBK。在编码转换显示的时候,就会出现乱码。

方法:逃避法,改用英文界面安装

[root@dbserver ~]# su - oracle

[oracle@dbserver ~]$ export LANG=en_USUTF-8

[oracle@dbserver ~]$ cd /var/ftp/pub/database/

[oracle@dbserver ~]$ /runInstaller

1、首先,Oracle查询编码:select from v$nls_parameters;//看看是否GBK

2、如果是用Servlet或者别的,插入数据之前输出一下,看看是否乱码。

比如:

doPost()

//设置接受编码,但你的页面也必须是UTF-8

responsesetContentType("text/html;charset=UTF-8");

doGet()

//下面方式转一下码

String username = new String(requestgetParameter("username")getBytes("ISO-8859-1"),"UTF-8");

以上就是关于oracle数据库中编写sql语句后注释中文显示乱码如何解决,但是复制出来就显示中文全部的内容,包括:oracle数据库中编写sql语句后注释中文显示乱码如何解决,但是复制出来就显示中文、oracle 中文乱码,该怎么解决、oracle中文字乱码的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9808626.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存