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

Oracle 11g में दिए गए url से फ़ाइल डाउनलोड करने और इसे ब्लॉब प्रकार कॉलम में सहेजने की प्रक्रिया

आपको पैकेज के लिए दस्तावेज़ देखना होगा UTL_HTTP

यह नमूना उपयोग करने के लिए

यह ऊपर के नमूने का कोड है

begin

  load_binary_from_url('http://www.oracle.com/us/hp07-bgf3fafb-db12c-2421053.jpg');
end;  


CREATE TABLE http_blob_test (
  id    NUMBER(10),
  url   VARCHAR2(255),
  data  BLOB,
  CONSTRAINT http_blob_test_pk PRIMARY KEY (id)
);

CREATE SEQUENCE http_blob_test_seq;

CREATE OR REPLACE PROCEDURE load_binary_from_url (p_url  IN  VARCHAR2) AS
  l_http_request   UTL_HTTP.req;
  l_http_response  UTL_HTTP.resp;
  l_blob           BLOB;
  l_raw            RAW(32767);
BEGIN
  -- Initialize the BLOB.
  DBMS_LOB.createtemporary(l_blob, FALSE);

  -- Make a HTTP request and get the response.
  l_http_request  := UTL_HTTP.begin_request(p_url);
  l_http_response := UTL_HTTP.get_response(l_http_request);

  -- Copy the response into the BLOB.
  BEGIN
    LOOP
      UTL_HTTP.read_raw(l_http_response, l_raw, 32767);
      DBMS_LOB.writeappend (l_blob, UTL_RAW.length(l_raw), l_raw);
    END LOOP;
  EXCEPTION
    WHEN UTL_HTTP.end_of_body THEN
      UTL_HTTP.end_response(l_http_response);
  END;

  -- Insert the data into the table.
  INSERT INTO http_blob_test (id, url, data)
  VALUES (http_blob_test_seq.NEXTVAL, p_url, l_blob);

  -- Relase the resources associated with the temporary LOB.
  DBMS_LOB.freetemporary(l_blob);
EXCEPTION
  WHEN OTHERS THEN
    UTL_HTTP.end_response(l_http_response);
    DBMS_LOB.freetemporary(l_blob);
    RAISE;
END load_binary_from_url;
/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 24 घंटे के समय को 12 घंटे प्लस AM/PM इंडिकेशन Oracle SQL में बदलें

  2. SQL*प्लस CSV निर्यात SQL डेवलपर की तुलना में धीमा है

  3. ORA-22288:फ़ाइल या LOB कार्रवाई FILEOPEN विफल रही। फ़ाइल नाम, निर्देशिका का नाम गलत है

  4. तालिकाओं में विशेषाधिकारों की क्वेरी के बीच अंतर

  5. क्या % प्रकार का प्रयोग वस्तु प्रकार के साथ किया जा सकता है? क्या यह संभव है क्योंकि ऐसा करने का प्रयास करते समय मुझे त्रुटि मिल रही है?