在修改字段的时候报的错,由于字段超过4000个字节导致报错,各位大侠给个解决办法,本人oracle非常菜,最好能提供详细过程

解决方案 »

  1.   


    varchar最多4000个字节,如果超过的话,使用clob了
      

  2.   

    至少我还是没明白,因为我用的就是clob类型,但还是报错字符串太长
      

  3.   

    看来你不是因为数据库没有定义CLOB,我是估计你的程序也使用的String直接添加进去的,如果你使用的jdk低于1.6的话(ojdbc也低于1.4),直接这样写数据稍微大一点会有问题(小数据也可以),存入进去的时候,需要将字符串转换为CLOB对象(这是一个java对象)然后通过设置CLOB写入进去,具体我其实你可以在百度上找下java操作CLOB,我给你找了个最简单的(虽然代码写得不咋的,不过看了下应该是这样写的):
    http://leeboysam.blog.163.com/blog/static/21419402006317940550/付:对于jdk 1.6、ojdbc 1.4以上的情况(当然也包含在此基础上支持的jdbcTemplate、ibatis或者Hibernate 3以上版本),我测试过一些大串,在读写CLOB时是不需要这么复杂的来回转的,另外这些版本之上对于BLOB的操作也可以直接使用byte[]直接进行存和取,而不需要来回用流来转换。