Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

फ़ाइलों में CLOB फ़ील्ड डंप करना?

यह pl/sql कोड oracle 11g में काम करना चाहिए। यह क्लॉब्स के टेक्स्ट को फ़ाइल नाम के शीर्षक के साथ निर्देशिका में डंप करता है।

BEGIN 
  FOR rec IN (
    select title, text 
    from mytable
  )
  LOOP 
    DBMS_XSLPROCESSOR.clob2file(rec.text, 'DUMP_SOURCES', rec.title ||'.txt'); 
  END LOOP;
END;

यदि DBMS_XSLPROCESSOR उपलब्ध नहीं है तो आप DBMS_XSLPROCESSOR.clob2file को UTL_FILE का उपयोग करने वाली प्रक्रिया से बदल सकते हैं।

उदाहरण के लिए:

CREATE OR REPLACE PROCEDURE CLOB2FILE (
    clob_in IN CLOB,
    directory_name IN VARCHAR2,
    file_name IN VARCHAR2
)
IS
    file_handle UTL_FILE.FILE_TYPE;
    clob_part VARCHAR2(1024);
    clob_length NUMBER;
    offset NUMBER := 1;
BEGIN
    clob_length := LENGTH(clob_in);
    file_handle := UTL_FILE.FOPEN(directory_name, file_name, 'W');

    LOOP
        EXIT WHEN offset >= clob_length;
        clob_part := DBMS_LOB.SUBSTR (clob_in, 1024, offset);
        UTL_FILE.PUT(file_handle, clob_part);
        offset := offset + 1024;
    END LOOP;

    UTL_FILE.FFLUSH(file_handle);
    UTL_FILE.FCLOSE(file_handle);

EXCEPTION
    WHEN OTHERS THEN
        UTL_FILE.FCLOSE(file_handle);
        RAISE;

END;

या शायद DBMS_XSLPROCESSOR.clob2file को dbms_advisor.create_file से बदलें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल - फास्ट रिफ्रेश और जॉइन के साथ एक भौतिक दृश्य कैसे बनाएं?

  2. Oracle:दो तारीखों के बीच के दिन और कार्यदिवसों को छोड़ दें कि ऋणात्मक संख्याओं को कैसे संभालें

  3. ORACLE 11g में टेबल-वैल्यूड फंक्शन्स? (पैरामीटरयुक्त दृश्य)

  4. Oracle में एक तालिका में अनुक्रम अंतराल ढूँढना

  5. COMPOSE() Oracle में फंक्शन