नीचे मैं पीएल/एसक्यूएल में फ़ाइल से बीएलओबी प्राप्त करने के लिए एक फ़ंक्शन उदाहरण दे रहा हूं।
फ़ाइल से BLOB प्राप्त करने के लिएPL/SQL फ़ंक्शन
निम्न फ़ंक्शन एक फ़ाइल को पढ़ेगा और फ़ाइल का BLOB डेटा प्रकार लौटाएगा। फ़ंक्शन GET_BLOB दो पैरामीटर लेता है:(1) Oracle निर्देशिका ऑब्जेक्ट नाम (2) फ़ाइल नाम।
CREATE OR REPLACE FUNCTION get_blob (i_dir IN VARCHAR2, i_file IN VARCHAR2)
RETURN BLOB
AS
l_bfile BFILE;
l_blob BLOB;
BEGIN
DBMS_LOB.createtemporary (l_blob, FALSE);
l_bfile := BFILENAME (i_dir, i_file);
DBMS_LOB.fileopen (l_bfile, DBMS_LOB.file_readonly);
DBMS_LOB.loadfromfile (l_blob, l_bfile, DBMS_LOB.getlength (l_bfile));
DBMS_LOB.fileclose (l_bfile);
RETURN l_blob;
EXCEPTION
WHEN OTHERS
THEN
IF DBMS_LOB.fileisopen (l_bfile) = 1
THEN
DBMS_LOB.fileclose (l_bfile);
END IF;
DBMS_LOB.freetemporary (l_blob);
RAISE;
END get_blob; परीक्षा
मान लीजिए आपके पास C:\Pics फ़ोल्डर में myimage.jpg फ़ाइल है, तो Oracle निर्देशिका ऑब्जेक्ट बनाएं, उदाहरण के लिए, फ़ोल्डर C:\Pics के लिए MY_PICS और निर्देशिका नाम MY_PICS और फ़ाइल नाम myimage.jpg पास करके नीचे दिए गए फ़ंक्शन को कॉल करें। . यदि आप नहीं जानते कि Oracle में निर्देशिका ऑब्जेक्ट कैसे बनाया जाता है, तो इस लिंक को देखें:Oracle निर्देशिका ऑब्जेक्ट बनाएँ।
DECLARE
f_blob BLOB;
BEGIN
f_blob := get_blob ('MY_PICS', 'myimage.jpg');
END; अब आपके पास myimage.jpg फ़ाइल का BLOB चर f_blob में है।
यह भी देखें:
- Oracle डेटाबेस में फ़ाइल कैसे डालें?
-
Oracle SQL कॉलम प्रकार को संख्या से varchar2 में बदलने के लिए, जबकि इसमें डेटा होता है
-
Oracle-ADF एप्लिकेशन को Tomcat 7 पर तैनात करने का प्रयास कर रहा है
-
संघ और CLOB फ़ील्ड के साथ चयन का उपयोग करते समय त्रुटि ORA-00932
-
Oracle तालिका में डेटा आयात करने के लिए PL/SQL प्रक्रिया ऑनलाइन उत्पन्न करें
-
समवर्ती प्रबंधक में अनुरोध सेट