नीचे मैं पीएल/एसक्यूएल में फ़ाइल से बीएलओबी प्राप्त करने के लिए एक फ़ंक्शन उदाहरण दे रहा हूं।
फ़ाइल से 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 प्रक्रिया ऑनलाइन उत्पन्न करें
-
समवर्ती प्रबंधक में अनुरोध सेट