Попробуйте что-то вроде (использование clob вместо blob, но тот же подход):
drop table tst_clob_tab;
create table tst_clob_tab
(
id number,
my_clob clob
);
-- Oracle will implicitly convert to clob (9i greater)
insert into tst_clob_tab(id,my_clob) values (1,'This is some large value...');
commit;
-- Create procedure
create or replace procedure tst_clob(p_1 in number, p_2 out clob) as
begin
select my_clob
into p_2
from tst_clob_tab
where id = p_1;
end;
-- Call procedure
declare
l_clob clob;
begin
tst_clob(1,l_clob);
dbms_output.put_line('Clob: ' || l_clob);
end;