【问题标题】:Output clob variable to file using Spool使用 Spool 将 clob 变量输出到文件
【发布时间】:2018-04-25 21:29:52
【问题描述】:

我在 SQL Developer 中连接到远程服务器上的 Oracle 数据库。我有一个将数据存储在 clob 变量中的 PL/SQL 脚本。我希望将此变量的数据输出到本地计算机上的文件

我遇到了SPOOL,但我想我没有正确使用它。

这是我的脚本的样子:

set echo off
set serveroutput on FORMAT WRAPPED
set verify off
set feedback off
set termout off

DBMS_OUTPUT.ENABLE(1000000);

SPOOL C:\home\output.txt

declare
    content CLOB;
begin
    -- do something with content
end;

spool off

set termout on
set feedback on

当我运行脚本时,没有任何内容写入文件 C:\home\output.txt。我希望将 clob 变量 content 中的数据写入文件。

我应该如何进行?

编辑:如果有人知道将 clob 变量写入文件的更好/另一种方式(SPOOL 除外),请随时提出建议。

编辑 2:也许值得一提的是,我的 clob 变量的内容大于 32767 字节。我不知道这会如何影响解决方案。

【问题讨论】:

    标签: oracle plsql oracle-sqldeveloper


    【解决方案1】:

    你试过这样的SET吗?

    set linesize 32767 
    set long 32767 
    set longchunksize 32767 
    set trimout on 
    set trimspool on
    
    spool output.txt
    
    select clob_column
    from your_table;
    
    spool off
    

    由于 CLOB 比 32767 长,它不会放在一行中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-18
      • 1970-01-01
      • 1970-01-01
      • 2010-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多