论坛首页 Java版

oracle 10g驱动在9i上使用时ORA-01461问题

浏览 863 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2007-11-15 关键字: oracle
oracle 9i自带的驱动处理clob字段时比较麻烦,要先插入empty_clob(),再取出,再更新进去。
在论坛搜到一些解答说用oracle 10g的驱动可以解决这个问题。

于是换为oracle 10g的驱动并测试,确实clob字段可以直接setString()插入。
clob字段没问题了,但varchar2字段又出问题(9i自带驱动)。

问题是这样的:假如一表字段为varchar2(4000)
插入数据时:
内容小于1xxx字符不会有问题
内容大于1700字符,小于3400时报错“ORA-01461: 仅可以为插入 LONG 列的 LONG 值赋值
内容大于3400时也不报错。
精确多少字符数会报错没去试。

在论坛或网上也看到有相关说法。说换新的10g release2驱动可以解决。
但我换了三四个,还是一样有这问题。
比如10g中新的10.2.0.3的classes12.jar,ojdbc14.jar
11g的也试过

oracle的官网速度又狂慢,十来分钟还不见页面打开。

如果你碰到过这个问题,并用oracle10g新版驱动解决了,能否麻烦上传一个给小弟。:)
   
最后更新时间:2008-03-27
你的问题解决没啊 ? 我也发现了!!

我这是操作CLOB     1000<内容<=2000  报错。 其他正常
   
0 请登录后投票
最后更新时间:2008-03-27
我也一直用10g驱动,数据库9i,10g都有,不过从来不用clob,只用blob.
   
0 请登录后投票
最后更新时间:2008-03-27
blob也一样!
   
0 请登录后投票
最后更新时间:2008-03-27
好像有先加空格 后 trim的方法,还有没有其他方法?
   
0 请登录后投票
论坛首页 Java版

跳转论坛:
JavaEye推荐