FUNCTION CLOB_TO_BLOB(P_DATA IN CLOB) RETURN BLOB AS L_BLOB BLOB; L_DEST_OFFSET PLS_INTEGER := 1; L_SRC_OFFSET PLS_INTEGER := 1; L_LANG_CONTEXT PLS_INTEGER := DBMS_LOB.DEFAULT_LANG_CTX; L_WARNING PLS_INTEGER := DBMS_LOB.WARN_INCONVERTIBLE_CHAR; B BLOB; C BLOB; BEGIN DBMS_LOB.CREATETEMPORARY(LOB_LOC => L_BLOB, CACHE => TRUE); DBMS_LOB.CONVERTTOBLOB(DEST_LOB => L_BLOB, SRC_CLOB => P_DATA, AMOUNT => DBMS_LOB.LOBMAXSIZE, DEST_OFFSET => L_DEST_OFFSET, SRC_OFFSET => L_SRC_OFFSET, BLOB_CSID => DBMS_LOB.DEFAULT_CSID, LANG_CONTEXT => L_LANG_CONTEXT, WARNING => L_WARNING); --RETURN L_BLOB; BEGIN SELECT 'EFBBBF' INTO B FROM DUAL; DBMS_LOB.CREATETEMPORARY(C, TRUE); DBMS_LOB.APPEND(C, B); DBMS_LOB.APPEND(C, L_BLOB); END; RETURN C; END;
2023-01-11
[Oracle]CLOB_TO_BLOB
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言