最近也想整整spring和hibernate,于是从网上找个例子来做,例子是MySql的,但我这里数据库用的是oracle,照着例子一步步来,但配置好连接串,
却怎么也连接不上,同时用pl/sql是能连接上的.报的是ORA-00604,上网google一搜,还真有这个问题,我就在这转贴下,
原文是链接是:
http://blog.chinaunix.net/u2/77127/showart_1160177.html
原文内容是:
myeclipse6.0 连接oracle10g的问题 ORA-00604,ORA-12705
MyEclipse Database Explorer建立oracle 10g数据库连接的时候 总提示
java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
ORA-12705: invalid or unknown NLS parameter value specified
问题初步分析是 Myeclipse语言 和oracle 10g 冲突问题。
进一步分析,由于oracle 是可以正常登陆的,所以问题出现在myeclipse 这边。
解决方法一:在网上搜索到的 估计myeclipse的版本是 5.0,解决方法
1.在windows XP控制面板中修改区域和语言选项,把"区域选项"中的"标准和格式"自定义为"英语(美国)";
2.在MyEclipse中help菜单>About MyEclipse...>点击"Configuration Details",设置其中的两个值:
osgi.nl=en_US
user.language=en
这样就可以在MyEclipse Database Explorer中顺利建立oracle连接了.
该方法在myeclipse6.0中不适应。
我的解决方法:
修改eclipse.ini文件,将"-Duser.language=en"修改为"-Duser.language=zh"。问题解决。
分析:主要原因是MyEclipse在启动时候,语言编码是在[MyEclipse路径]\eclipse\eclipse.ini文件中加载的。 而国别编码是从系统的区域设置中得到的。如果MyEclipse默认启动参数为"-Duser.language=en",而操作系统设为"中文(中国)"MyEclipse加载后的信息就是"en_CN",这样就会出现上述问题,所以只要将两边的设置改成一致的,就可以解决上述问题. 你也可以就系统的区域设置定为"中文(中国)",修改eclipse.ini文件,将"-Duser.language=en"修改为"-Duser.language=zh",这样在MyEclipse加载后的Configuration Details信息就统一为zh_CN,即"osgi.nl=zh_CN".
如果是oracle 9i 问题,则可以如下解决方法
数据库服务器字符集select * from nls_database_parameters,其来源于props$,是表示数据库的字符集。
客户端字符集环境select * from nls_instance_parameter,其来源于v$parameter,
表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表
客户端的字符集要求与服务器一致,才能正确显示数据库的非Ascii字符。如果多个设置存在的时候,alter session>环境变量>注册表>参数文件
字符集要求一致,但是语言设置却可以不同,语言设置建议用英文。如字符集是zhs16gbk,则nls_lang可以是American_America.zhs16gbk。
首先查看当前数据库字符集是什么,配置资料库选用相同
把eclipse.ini里的en修改成zh后,还真行了,高手就是高手啊~
分享到:
相关推荐
Oracle数据库不同版本间的客户端与服务端的连接问题通常涉及到安全和兼容性配置,这篇文章主要讲述了在Oracle 11g R2客户端尝试连接Oracle 19c服务端时,遇到了两个特定的错误:ORA-28040和ORA-01017,以及如何解决...
### 解决Drop Goldengate 用户时报ORA-00604 ORA-20782 ORA-06512问题 #### 一、问题背景与现象 在进行Oracle数据库管理过程中,经常会遇到需要删除用户的场景。当尝试执行`drop user goldengate cascade;`命令时,...
但是在实际应用过程中经常会出现“ORACLE 的 JOB 无法执行”、“ORA-04031”等错误情况,给维护及使用带来问题。 ORA-04031错误信息产生的原因主要有两种情况: 1. Oracle进程在向SGA申请内存时,如果申请失败,将...
然而,有时在使用Navicat连接Oracle数据库时可能会遇到各种问题,如"ORA-12737 InstantClientLight"错误。本文将深入探讨这个错误及其解决方案,同时也会涉及Navicat与Oracle的集成以及InstantClient的相关知识。 ...
错误描述:oracle远程连接服务器出现 ORA-12170 TNS:连接超时 错误检查:有很多是oracle自身安装的问题,但是我这里服务器配置正常,监听正常,服务正常,远程可以ping通服务器。 这里主要是防火墙问题,解决办法: ...
总之,"ORA-28040:没有匹配的验证协议"是一个常见的Oracle连接问题,需要结合Kettle的配置和Oracle数据库的设置来解决。通过以上分析和解决方案,你应该能够找到解决问题的方法,顺利连接到Oracle 12c数据库。
在Oracle数据库管理过程中,遇到ORA-12518错误是较为常见的问题之一。此错误通常发生在客户端试图连接到数据库服务器的过程中,当监听器无法将客户端连接顺利地移交给服务器进程或调度进程时触发。本文旨在详细介绍...
在Oracle数据库管理过程中,遇到ORA-00132和ORA-00214这类错误时,往往意味着数据库配置或启动过程中出现了问题。下面将对这两个错误进行详细解析,并给出相应的解决方案。 #### 二、ORA-00132: Syntax Error or ...
用oracle数据库新建连接时遇到ora-12505,此问题解决后又出现ora-12519错误,郁闷的半天,经过一番折腾问题解决,下面小编把我的两种解决方案分享给大家,仅供参考。 解决方案一: 今天工作时在新建连接的时候遇到...
### ERwin连接Oracle报ORA-01041内部错误,hostdef扩展名不存在...通过上述详细的步骤和建议,可以有效地解决ERwin连接Oracle时报ORA-01041内部错误的问题。在实际操作中,还需要根据具体的环境和情况进行适当的调整。
然而,在日常运维过程中,我们可能会遇到各种错误,比如“ORA-00702”就是其中之一。这个错误通常在尝试重启Oracle数据库服务时出现,意味着数据库实例在启动过程中遇到了问题。本文将详细介绍如何在Windows和Linux...
### 远程登录并启动Oracle数据库及解决ORA-01031问题 #### 引言 在Oracle数据库管理过程中,远程登录与启动数据库是非常重要的操作之一。这不仅能够提高数据库管理员的工作效率,还能帮助他们更好地监控和维护...
ORA-00604: 递归SQL层1出现错误 ORA-03106: 致命的双工通信协议错误 ORA-02063: 紧接着line(源于dblink) 以及 ORA-04052: 在查找远程对象时出错 ORA-00604: 递归SQL层1出现错误 ORA-03120: 双工转换例行程序:整数...
在创建Oracle数据库连接时遇到的错误ORA-01017和ORA-02063涉及到用户认证问题以及Oracle数据库版本之间的差异处理。ORA-01017错误表示用户名或密码无效,登录被拒绝,而ORA-02063则通常表示在Oracle数据库之间进行...
### Oracle 10g启动后报ORA-16038错误的解决方法 #### 错误概述 在启动Oracle 10g数据库时遇到ORA-16038错误,该错误通常与归档日志操作有关。具体错误信息为: ``` ORA-16038: log 1 sequence #230 cannot be ...
在使用Oracle Data Pump工具IMPDP(Import Data Pump)进行数据导入的过程中,可能会遇到ORA-39002和ORA-39070等错误。本文将针对这些错误的排查方法进行详细介绍,帮助用户理解问题的原因及解决策略。 ### 错误...
完美解决Navicat连接Oracle时提示:“ORA-12737:Instant Client Light:unsupported server character set ZHS16GBK”问题的方法。
### Oracle12cRAC数据库出现ora-12520, ora-12516问题解析 #### 一、问题概述 在使用Oracle12cRAC(Real Application Clusters)数据库的过程中,可能会遇到客户端连接时出现ora-12520或ora-12516错误的问题。这两...