Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Xuất CLOB sang tệp văn bản bằng Oracle SQL Developer

nếu bạn có quyền truy cập vào hệ thống tệp trên hộp cơ sở dữ liệu của mình, bạn có thể làm như sau:

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;
/

Tôi đã sao chép và dán từ trang web này.

Bạn cũng có thể thấy câu hỏi trước đây về UTL_FILE hữu ích. Nó giải quyết việc xuất sang CSV. Tuy nhiên, tôi không có ý tưởng hoặc kinh nghiệm về cách UTL_FILE xử lý CLOB.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sql * plus luôn trả về mã thoát 0?

  2. Chuyển đổi khoảng thời gian thành phút

  3. Cách tính tuổi theo năm, tháng và ngày bằng Oracle

  4. Cách tính toán sự khác biệt giữa hai ngày trong PostgreSQL / Oracle

  5. Tại sao chạy truy vấn này với EXECUTE NGAY LẬP TỨC khiến nó không thành công?