oracle插入CLOB类型超过4000个字符解决方案

oracle在插入CLOB的数据默认会以varchar2的类型插入最多只能插入4000字符

在此我分享一下对于这个问题解决方案

create or replace package PKG_UPDATE Is
   --
   PROCEDURE UP_POSTSCLOB(idxval In number,clobstr In Clob);
end;
CREATE OR REPLACE PACKAGE BODY PKG_UPDATE Is
  
  PROCEDURE UP_POSTSCLOB(idxval In number,clobstr In Clob) as
  Begin
      Update NEW_POSTS Set content=clobstr Where post_id=idxval;  
      Commit;
  EXCEPTION
    WHEN OTHERS THEN
      ROLLBACK;
  End UP_POSTSCLOB;
 
End PKG_UPDATE;

利用Oracle函数进行更新 content字段

以PHP为例

$clob = Db::execute("begin PKG_UPDATE.UP_POSTSCLOB($id,'$content');end;");