0

我正在使用例程来填充 clob 数据。现在我需要通过匿名 pl/sql 块将此数据写入本地计算机上的文件(.html)。

  • Clob 数据包含具有 html 标签的数据。

代码看起来像 SET HEADING OFF SET LINESIZE 32767 SET LONG 32767 SET PAGESIZE 0 spool abc.html DECLARE v1 CLOB; l_offset 整数:= 1;
开始 proc1(v1); -- OUT 参数 -- 当 l_offset > dbms_lob.getlength(l_clob) 时,我正在使用 dbms_output 循环退出假脱机数据;DBMS_OUTPUT.PUT_LINE (dbms_lob.substr(l_clob, 255, l_offset)); l_offset := l_offset + 255; 结束循环;结尾;

spool off

这样做可以获取文件中 clob 的内容,但生成的 html 文件的行为不符合预期(因为一次使用 dbms_output 写入 255 个字节会扭曲 html 内容)。

他们是否有任何其他方式将 clob 的内容写入本地机器上的文件?

请协助。

4

1 回答 1

0

当您调用 PUT_LINE 时,您指定的项目会自动跟随一个行尾标记。如果您调用 PUT 来构建一条线,那么您必须通过调用 NEW_LINE 添加您自己的行尾标记。GET_LINE 和 GET_LINES 不返回未以换行符终止的行。

使用DBMS_OUTPUT.PUT(item IN VARCHAR2) 过程

于 2012-12-19T07:02:59.637 回答