myeclipse连接oracle出现ora-12705错误的解决办法

MyEclipse Database Explorer建立oracle数据库连接的时候,不管用哪个oracle jdbc驱动包(classes12.jar,ojdbc14.jar),都会报出下面的错误.
java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
java.sql.SQLException: ORA-12705: invalid or unknown NLS parameter value specified
网上查找很多都是将原因定位到oracle的版本,或者oracle驱动的版本上,但是这些都不对,估计来源于同一个作者.-_-!
下面,我给大家给出个可行的解决办法(同样来自网络,我试了,可以解决这个问题):
1.在windows XP控制面板中修改区域和语言选项,把"区域选项"中的"标准和格式"自定义为"英语(美国)";
2.在MyEclipse中help菜单>About MyEclipse...>点击"Configuration Details",设置其中的两个值:
osgi.nl=en_US (这里我改不了,那个文件貌似是只读的)
user.language=en
这样就可以在MyEclipse Database Explorer中顺利建立oracle连接了.
注意:我没有做额外的测试,这个解决办法来自网络,并且恰巧我也用的是windows XP,所以对于其他环境情况是否适用,只有通过大家自己测试了,呵呵~
----------------------------------------------------------------------------------------------------
刚才我又试了一下,出现这种问题的主要原因是MyEclipse在启动时候,语言编码是在[MyEclipse路径]\eclipse\eclipse.ini文件中加载的,而国别编码是从系统的区域设置中得到的.如果MyEclipse默认启动参数为"-Duser.language=en",而操作系统设为"中文(中国)"MyEclipse加载后的信息就是"en_CN",这样就会出现上述问题,所以只要将两边的设置改成一致的,就可以解决上述问题.以上的解决方法是统一为en_US.
你也可以就系统的区域设置定为"中文(中国)",修改eclipse.ini文件,将"-Duser.language=en"修改为"-Duser.language=zh",这样在MyEclipse加载后的Configuration Details信息就统一为zh_CN,即"osgi.nl=zh_CN".然后我进行了测试,同样可以解决此问题.

(用这种方法就可以。)

你可能感兴趣的:(eclipse,oracle,MyEclipse,XP,osgi)