我正在使用 Oracle 9i。
我正在从游标中获取数据到数组中:
FETCH contract_cur
BULK COLLECT INTO l_contract ;
但现在我想将这个l_contract“转换”成一个 CLOB 变量l_clob
有没有简单的方法可以做到这一点?
否则,我如何将 SELECT 语句中的行转换为一个 CLOB 变量?
谢谢
编辑:我忘了提到它是一个 %ROWTYPE 数组,而不仅仅是一列。
最佳答案
多么丑陋的事情。
是所有字符数据,还是其中也有数字和/或日期/时间值?如果是这样,当您将这些数据类型转换为字符串时,您想对它们使用什么格式。
您可能还需要考虑字段和记录分隔符。
您考虑过 XML 吗?
declare
v_clob clob;
v_xml xmltype;
begin
select xmlagg(XMLELEMENT("test",xmlforest(id,val)))
into v_xml
from test;
select v_xml.getclobval
into v_clob
from dual;
dbms_output.put_line(v_clob);
end;
/
关于oracle - PL/SQL 数组到 CLOB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2297672/