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

पीएल/एसक्यूएल का उपयोग करके मैं एक ब्लॉब में फ़ाइल की सामग्री कैसे प्राप्त करूं?

इसे पूरी तरह से पीएल/एसक्यूएल में करने के लिए, फ़ाइल को सर्वर पर होना चाहिए, एक निर्देशिका में स्थित है जिसे आपको डेटाबेस में परिभाषित करने की आवश्यकता होगी। निम्नलिखित ऑब्जेक्ट बनाएं:

CREATE OR REPLACE DIRECTORY
    BLOB_DIR
    AS
    '/oracle/base/lobs'
/



CREATE OR REPLACE PROCEDURE BLOB_LOAD
AS

    lBlob  BLOB;
    lFile  BFILE := BFILENAME('BLOB_DIR', 'filename');

BEGIN

    INSERT INTO table (id, your_blob)
        VALUES (xxx, empty_blob())
        RETURNING your_blob INTO lBlob;

    DBMS_LOB.OPEN(lFile, DBMS_LOB.LOB_READONLY);

    DBMS_LOB.OPEN(lBlob, DBMS_LOB.LOB_READWRITE);

    DBMS_LOB.LOADFROMFILE(DEST_LOB => lBlob,
                          SRC_LOB  => lFile,
                          AMOUNT   => DBMS_LOB.GETLENGTH(lFile));

    DBMS_LOB.CLOSE(lFile);
    DBMS_LOB.CLOSE(lBlob);

    COMMIT;

END;
/


  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 11g को एकल SQL क्वेरी के लिए अधिक CPU का उपभोग करने के लिए बाध्य क्यों नहीं कर सकता?

  3. एआरएम आधारित डेबियन डिवाइस के लिए ओरेकल इंस्टेंट क्लाइंट

  4. जावा - ऑरैकल संग्रहीत प्रक्रिया में पासिंग सरणी

  5. Oracle SQL में दिनांक के अनुसार शीर्ष 1 का चयन और आदेश कैसे करें?