<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Creativz Lab &#187; file BLOB</title>
	<atom:link href="http://creativeslab.net/tag/file-blob/feed" rel="self" type="application/rss+xml" />
	<link>http://creativeslab.net</link>
	<description>weblog for Developers &#38; Designers</description>
	<lastBuildDate>Sun, 19 Dec 2010 17:40:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>File contents into BLOB in Oracle Database, using PL/SQL</title>
		<link>http://creativeslab.net/file-contents-into-blob-in-oracle-database-using-plsql</link>
		<comments>http://creativeslab.net/file-contents-into-blob-in-oracle-database-using-plsql#comments</comments>
		<pubDate>Tue, 16 Dec 2008 00:19:54 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Oracle Applications]]></category>
		<category><![CDATA[Oracle Database]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[BLOB]]></category>
		<category><![CDATA[file BLOB]]></category>
		<category><![CDATA[Oracle Applicaions]]></category>
		<category><![CDATA[Oracle Technical]]></category>
		<category><![CDATA[pl/sql procedure]]></category>
		<category><![CDATA[PL/SQL. file reading]]></category>

		<guid isPermaLink="false">http://creativeslab.net/?p=15</guid>
		<description><![CDATA[Often there will be a requirement for reading .out files generated by Oracle Applications and converting into pdf files and send as mail attachment.   Here is a sample PL/SQL procedure which can read a file from a specified location, into a BLOB and returns it.   The calling program can convert this blob data [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">Often there will be a requirement for reading .out files generated by Oracle Applications and converting into pdf files and send as mail attachment.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">Here is a sample PL/SQL procedure which can read a file from a specified location, into a BLOB and returns it.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">The calling program can convert this blob data into any form.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">Calling program can be another PL/SQL procedure or a Java Program or some other language program.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">Note: following procedure works only on Oracle Database.</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">=============================================================</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">create or replace procedure READ_FILE_TO_BLOB(</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt 1.5in"><span style="font-size: small;font-family: Times New Roman">dest_lob_return OUT BLOB, </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt 1.5in"><span style="font-size: small"><span style="font-family: Times New Roman">file_name IN VARCHAR2)</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman">is</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span><span style="font-size: small;font-family: Times New Roman">   </span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span><span> </span>&#8211; BFILE_LOC is the directory created, with help of </span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>&#8211;create directory BFILE_LOC as &#8216;/export/home/test/d01/oratst/testcomn/admin/out/TEST_xxxxxxr06/&#8217;;</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>src_lob<span>  </span>BFILE := BFILENAME(‘BFILE_LOC’, file_name);<span>  </span></span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>dest_lob BLOB;</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>v_lob_len INTEGER;</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>v_offset NUMBER := 1; </span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>v_buffer<span>       </span>RAW(20);</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>    </span>v_buffer_size<span>  </span>BINARY_INTEGER := 20;</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman">BEGIN</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span></span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span>DBMS_LOB.CREATETEMPORARY(dest_lob, TRUE, DBMS_LOB.SESSION); </span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span>DBMS_LOB.OPEN(src_lob, DBMS_LOB.LOB_READONLY);</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span>DBMS_LOB.LoadFromFile( DEST_LOB =&gt; dest_lob,</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>     </span><span>                     </span>SRC_LOB<span>  </span>=&gt; src_lob,</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>                          </span>AMOUNT<span>   </span>=&gt; DBMS_LOB.GETLENGTH(src_lob) );</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span>DBMS_LOB.CLOSE(src_lob);</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span>dest_lob_return := dest_lob;</span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small"><span style="font-family: Times New Roman"><span>   </span></span></span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">end READ_FILE_TO_BLOB;</span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman"> </span></p>
<p class="MsoNormal" style="margin: 0in 0in 0pt"><span style="font-size: small;font-family: Times New Roman">===============================================================</span></p>
]]></content:encoded>
			<wfw:commentRss>http://creativeslab.net/file-contents-into-blob-in-oracle-database-using-plsql/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

