大家好,我在项目开发过程中遇到这样一个问题,当我对Oracle数据库中的CLOB字段进入insert或update操作的时候,后台出现
java.sql.SQLException: ORA-01461: 仅可以为插入 LONG 列的 LONG 值赋值
这样的错误。我的开发环境为tomcat5.5 + hibernate3.2 + oracle9i.
JDBC驱动是用了10g的ojdbc14.jar.这个错误比较奇怪的是,当插入的数据长度比较少的时候不会报错,数据比较多的时候也不会报错,就是不多不少的时候就报错,上网查了一些资料,有些人测试说当数据中含有中文且长度在2000至4000之间就会出错。另有些人说用10g最新的ojdbc14.jar驱动就可以,但我到oracle官方网站下载不下来,不知道哪位大哥有啊,或帮忙下载下来发一份给我。Email:[email protected]://www.oracle.com/technology/software/htdocs/distlic.html?=/technology/software/tech/java/sqlj_jdbc

解决方案 »

  1.   

    说明一下,hibernate中映射文件中对字段类型为CLOB的字段映射的数据类型为string,就是当作是string一样操作。
      

  2.   

    楼主 解决没有a,我现在的开发环境和你的一样,也遇到了这个问题,而且我用的是ojdbc14
    请教楼主是怎么解决的
      

  3.   

    映射的配置类型不能用string,要用text
    驱动版本没有问题,只能是10.1的,不能用10.2的
      

  4.   

    非常支持楼上的,oracle9.2用10.1的不要用10.2问题解决!切记啊!
      

  5.   

    我现在的问题与楼主一样啊
    请问楼上的,oracle9.2用10.1的?我用classes12和ojdbc14都不行!!
    请问10.1的是哪个驱动啊???
      

  6.   

    经研究发现此问题肯定问ORACLE的BUG!!!
      

  7.   

    我也遇到了这种情况,我使用的是ojdbc14-10.2.0.2.0.jar,驱动版本是10.2.0.2.0;会出现这个问题;
    后来改用ojdbc14-10.2.0.3.0.jar 问题就解决了。