myeclipse oracle 添加时报错 10

我在web向数据库中添加数据的时候就会报这个错,但是我从数据库添加就不会有错,求解ORA-01461:canbindaLONGvalueonlyforinsertinto... 我在web向数据库中添加数据的时候就会报这个错,但是我从数据库添加就不会有错,求解
ORA-01461: can bind a LONG value only for insert into a LONG column
展开
 我来答
杜爷1号
2015-07-31 · 知道合伙人软件行家
杜爷1号
知道合伙人软件行家
采纳数:4973 获赞数:9186
毕业于福建农林大学,本科学士学位。从事IT行业3年,曾参与过多个大型项目的需求调研、软件研发。

向TA提问 私信TA
展开全部
对clob的操作出现can bind a LONG value only for insert into a LONG column ,主要问题是在引入jar包上。
先说下我做的项目中大字段出现的问题时的系统引入的jar包,oracle版本:10g,用的驱动版本:classes12.jar的版本10.2.0.1.0。并且项目中同时还有ojdbc14.jar(10.02版本) 、ojdbc14dms.jar、classes12dms.jar、ojdbc14dms_g.jar这几个都设计数据库操作的jar包,Tomcat的lib下也是classes12.jar(10.2.0.1.0版本)。在项目具体模块中涉及到大字段的操作时候,始终出现can bind a LONG value only for insert into a LONG column 的sql异常。
在网上查了很多资料,都倾向于是使用的oracle版本和classes12.jar的版本不一致的问题所造成,因为项目使用的是oracle10g,换了classes12.jar(10.2.0.1.0版本)包与所使用的oracle版本一致了,但是在操作时问题依然出现sql的异常。
=================================================
解决方式:
1.删除项目中的ojdbc14.jar(10.02版本) 、ojdbc14dms.jar、classes12dms.jar、
ojdbc14dms_g.jar、classes12.jar(10.2.0.1.0版本)这样的jar。
2.同时删除tomcat/lib下的classes12.jar包。
3.用ojdbc14.jar(注意:Oracle JDBC Driver version - 10.1.0.2.0)添加到项目和tomcat中。
重启app,操作相应的用到大字段的模块,问题解决。
================================================================
问题的原因:
驱动包classes12.jar用于JDK 1.2和JDK 1.3,而ojdbc14.jar用于JDK 1.4及以上,所以尽量不要使用classes12.jar;
从oracle 9.2之后,对jdbc 的驱动程序的命名将有所改变,JDK1.1,JDK1.2的驱动程序名(class12.jar)将不再改变,一直沿用下去,从JDK1.4开始驱动程序名将所有改变,例如:JDK1.4的驱动名为ojdbc14.jar 。JDK1.5的驱动名为ojdbc15.jar
百度网友04e9dec7a
2015-07-31 · 超过17用户采纳过TA的回答
知道答主
回答量:115
采纳率:0%
帮助的人:28.8万
展开全部
把那个内容对应的数据库字段改成long试试
追问
还是一样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式