昨天解决了delphi传CLOB类型字段。但是新的问题又来了。。传到ORACLE里的字符串,超过4000的如果用字符串函数来处理的时候,被截断了,,比如INSTR()等函数,ORACLE的好多内部函数的参数都是定义的VARCHAR2,他只能取4000在内的字符传,,,, 
高人请高见.....

解决方案 »

  1.   

    使用dbms_lob包来处理clob对象啊!
    dbms_lob有很多的函数和过程的。
      

  2.   

    dbms_lob包里有substr(),INSTR()函数,但是对字符串处理的函数不是很全,,比如说想replace()、length()函数,
    难道需要自己来写吗?
    还有没有其他包?
      

  3.   

    长串?
    这个字段是什么数据类型?char 0-2000 
    varchar2 0-4000,其它字段就得找相应的处理函数,
    比如long、raw、long raw......
      

  4.   

    现在问题来了,我用DBMS_LOB包里的GETLENGTH()函数获取长度,,
    最大只返回了 18341 数...实际上我的字符串不至这么多的,我跟踪看过,,被截断了,,怎么会事啊...????????其他DBMS_LOB.SUBSTR()函数读没有截断.....不可能 GETLENGTH() 的最大上限值就是18341 吧????????????其他我都解决了。.就这个问题了,,谁帮我解决了,就结帖..送分了。...