Files
oracle/timhall/miscellaneous/blob_to_clob.sql
2026-03-12 21:23:47 +01:00

34 lines
1.0 KiB
SQL

CREATE OR REPLACE FUNCTION blob_to_clob (p_data IN BLOB)
RETURN CLOB
-- -----------------------------------------------------------------------------------
-- File Name : https://oracle-base.com/dba/miscellaneous/blob_to_clob.sql
-- Author : Tim Hall
-- Description : Converts a BLOB to a CLOB.
-- Last Modified: 26/12/2016
-- -----------------------------------------------------------------------------------
AS
l_clob CLOB;
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;
BEGIN
DBMS_LOB.createTemporary(
lob_loc => l_clob,
cache => TRUE);
DBMS_LOB.converttoclob(
dest_lob => l_clob,
src_blob => 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_clob;
END;
/