使用Oracle SQL Developer将CLOB导出到文本文件

前端之家收集整理的这篇文章主要介绍了使用Oracle SQL Developer将CLOB导出到文本文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用Oracle sql Developer并尝试将表导出到CSV文件.某些字段是CLOB字段,在许多情况下,当导出发生时,条目将被截断.我正在寻找一种方法来获得整个事情,因为我的最终目标是在这里不使用Oracle(我收到一个Oracle转储 – 被加载到一个oracle数据库,但正在使用另一种格式的数据,所以通过CSV作为中介).

如果有多种解决方案,考虑到这是一个一次性的程序,我不介意更多的hack-ish类型的解决方案,更多地涉及“做正确”的解决方案.

如果您可以访问数据库文件系统框,您可以执行以下操作:
CREATE OR REPLACE DIRECTORY documents AS 'C:\';
SET SERVEROUTPUT ON
DECLARE
  l_file    UTL_FILE.FILE_TYPE;
  l_clob    CLOB;
  l_buffer  VARCHAR2(32767);
  l_amount  BINARY_INTEGER := 32767;
  l_pos     INTEGER := 1;
BEGIN
  SELECT col1
  INTO   l_clob
  FROM   tab1
  WHERE  rownum = 1;

  l_file := UTL_FILE.fopen('DOCUMENTS','Sample2.txt','w',32767);

  LOOP
    DBMS_LOB.read (l_clob,l_amount,l_pos,l_buffer);
    UTL_FILE.put(l_file,l_buffer);
    l_pos := l_pos + l_amount;
  END LOOP;
EXCEPTION
  WHEN OTHERS THEN
    DBMS_OUTPUT.put_line(sqlERRM);
    UTL_FILE.fclose(l_file);
END;
/

我复制和粘贴了from this site.

你也可能会发现这个previous question about UTL_FILE很有用.它解决导出为CSV.不过,我对于UTL_FILE如何处理CLOB不了解或经验.

原文链接:https://www.f2er.com/oracle/205423.html

猜你在找的Oracle相关文章