ORACLE里VARCHAR2只能存4000个字符,而LONG类型理论上是可以存4G数据的,可是在实际中
我在存储过程中定义了一个LONG类型的变量以存储动态的SQL,但是经常在拼接字符的时候会出现错误信息:ORA-06502 数字或值错误  和 字符缓冲区过小两种错误可是问题是我拼接到LONG类型中的字符连40K都不到,怎么会报错?请问大大们如何解决LONG类型存储长字符串的问题

解决方案 »

  1.   

    可以这样:
    String abc=".....";//abc为一串很长的字符串
    StringReader buf = new StringReader(abc);
    PrepairStatement pstmt=con.createstetement();
    查查这个pstmt怎么用就可以了
      

  2.   

    我要在ORACLE的存储过程里写,不是在。NET或者什么JAVA环境下,OK?
      

  3.   

    解决方法已经找到了,我定义了一个数组,把字符放到数组里处理,当然还可能建临时表处理,
    TO mosquitoxh(南非蚊子) ,我觉得这种做法很常见,利用数据库的存储过程来解决这类问题,效率更高一些