97
http://www.experts-exchange.com/Database/Oracle/A_7749-How-to- send-email-attachments-with-Oracle.html?tpn=1 SMTP (Simple Mail Transfer Protocol) The standard technology for sending email is known as SMTP and is defined originally in RFC821 ( http://tools.ietf.org/html/rfc821 ) and obsoleted and updated several times since then. While clarification and expansion has occurred through these RFC changes; the basic mechanics have remained the same. SMTP is a fairly simple protocol. All communication is in 7-bit ASCII characters on a standard TCP/IP port. By default this is port 25, but could, in theory, be any available TCP/IP port. Surprisingly, SMTP doesn't actually support attachments or embedded objects like images. SMTP only sends plain text. What you see in email clients that appear as attachments or embedded objects are specially encoded plain text that your email client can decode as jpeg images, mp3 songs, pdf documents, etc. One of the more common encodings is called Base-64 and the embedding rules are called MIME (Multipurpose Internet Mail Extensions; which is defined in a series of documents initiated with RFC2045 ( http://tools.ietf.org/html/rfc2045 ) I won't get into all of the details of MIME and encoding but the basic idea is you include an instruction as part of the email header that tells the client you are going to have MIME elements in the body and define a tag to delineate those elements from the normal text. Then you encode your non-text elements with Base-64 so they can be sent via SMTP. The email client (such as Thunderbird, Outlook, Lotus Notes, or web based like Gmail) then reads the tags and parses and displays the elements in whatever form is appropriate to the mime content; such as embedded images for encoded jpg files. Conceptually that's all there is to it: define a tag, prefix content with the tag, encode the content if it's not text, and suffix content with the tag. The code to do all of that may appear to be cumbersome; but if you compare to non-attached content you'll see the extra steps really don't add too much extra work. For example, this block will create a CSV file of all objects you have access to including owner, name, type and date created. That file will then be appended to the SMTP body as an attachment. Since the content is text, there is no need for special encoding, wrapping in MIME boundary tags is sufficient. Note this example not only demonstrates how to embed an object or attachment but also how to exceed the 32K limit of UTL_MAIL.

Send Mail With SMTP

  • Upload
    dvarta

  • View
    125

  • Download
    10

Embed Size (px)

Citation preview

Page 1: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

SMTP (Simple Mail Transfer Protocol)

The standard technology for sending email is known as SMTP and is defined originally in RFC821 (http://tools.ietf.org/html/rfc821) and obsoleted and updated several times since then.   While clarification and expansion has occurred through these RFC changes; the basic mechanics have remained the same.  SMTP is a fairly simple protocol.  All communication is in 7-bit ASCII characters on a standard TCP/IP port.  By default this is port 25, but could, in theory, be any available TCP/IP port.  Surprisingly, SMTP doesn't actually support attachments or embedded objects like images.  SMTP only sends plain text.  What you see in email clients that appear as attachments or embedded objects are specially encoded plain text that your email client can decode as jpeg images, mp3 songs, pdf documents, etc.  One of the more common encodings is called Base-64 and the embedding rules are called MIME (Multipurpose Internet Mail Extensions; which is defined in a series of documents initiated with RFC2045 (http://tools.ietf.org/html/rfc2045 )  I won't get into all of the details of MIME and encoding but the basic idea is you include an instruction as part of the email header that tells the client you are going to have MIME elements in the body and define a tag to delineate those elements from the normal text.  Then you encode your non-text elements with Base-64 so they can be sent via SMTP.  The email client (such as Thunderbird, Outlook, Lotus Notes, or web based like Gmail) then reads the tags and parses and displays the elements in whatever form is appropriate to the mime content; such as embedded images for encoded jpg files.  Conceptually that's all there is to it:  define a tag, prefix content with the tag, encode the content if it's not text, and suffix content with the tag. The code to do all of that may appear to be cumbersome; but if you compare to non-attached content you'll see the extra steps really don't add too much extra work.

For example, this block will create a CSV file of all objects you have access to including owner, name, type and date created.  That file will then be appended to the SMTP body as an attachment.  Since the content is text, there is no need for special encoding, wrapping in MIME boundary tags is sufficient.  Note this example not only demonstrates how to embed an object or attachment but also how to exceed the 32K limit of UTL_MAIL.

DECLARE v_connection UTL_SMTP.connection; -- mime blocks (the sections of the email body that can become attachments) -- must be delimited by a string, this particular string is just an example c_mime_boundary CONSTANT VARCHAR2(256) := '-----AABCDEFBBCCC0123456789DE'; v_clob CLOB := EMPTY_CLOB(); v_len INTEGER; v_index INTEGER;BEGIN

Page 2: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

-- Build the contents before connecting to the mail server -- that way you can begin pumping the data immediately -- and not risk an SMTP timeout

FOR x IN (SELECT * FROM all_objects WHERE ROWNUM < 20) LOOP v_clob := v_clob || x.owner || ',' || x.object_name || ',' || x.object_type || ',' || TO_CHAR(x.created, 'yyyy-mm-dd hh24:mi:ss') || UTL_TCP.crlf; END LOOP;

v_connection := UTL_SMTP.open_connection(:p_smtp_server); UTL_SMTP.helo(v_connection, :p_domain); UTL_SMTP.mail(v_connection, :p_from); UTL_SMTP.rcpt(v_connection, :p_to); UTL_SMTP.open_data(v_connection);

UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Subject: test subject' || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

UTL_SMTP.write_data( v_connection, 'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'This is a multi-part message in MIME format.' || UTL_TCP.crlf );

UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf);

-- Set up attachment header UTL_SMTP.write_data( v_connection, 'Content-Disposition: attachment; filename="' || 'your_file_name.csv' || '"' || UTL_TCP.crlf );

Page 3: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

-- Write attachment contents

v_len := DBMS_LOB.getlength(v_clob); v_index := 1;

WHILE v_index <= v_len LOOP UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index)); v_index := v_index + 32000; END LOOP;

-- -- End attachment UTL_SMTP.write_data(v_connection, UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

UTL_SMTP.close_data(v_connection); UTL_SMTP.quit(v_connection);EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);END;

By comparison,  here's the same block of code, except the data is written directly to the body of the email instead of wrapped as an attachment.

DECLARE v_connection UTL_SMTP.connection; v_clob CLOB := EMPTY_CLOB(); v_len INTEGER; v_index INTEGER;BEGIN -- Build the contents before connecting to the mail server -- that way you can begin pumping the data immediately -- and not risk an SMTP timeout

FOR x IN (SELECT * FROM all_objects WHERE ROWNUM < 20) LOOP v_clob := v_clob

Page 4: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

|| x.owner || ',' || x.object_name || ',' || x.object_type || ',' || TO_CHAR(x.created, 'yyyy-mm-dd hh24:mi:ss') || UTL_TCP.crlf; END LOOP;

v_connection := UTL_SMTP.open_connection(:p_smtp_server); UTL_SMTP.helo(v_connection, :p_domain); UTL_SMTP.mail(v_connection, :p_from); UTL_SMTP.rcpt(v_connection, :p_to); UTL_SMTP.open_data(v_connection);

UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Subject: test subject' || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf); v_len := DBMS_LOB.getlength(v_clob); v_index := 1;

WHILE v_index <= v_len LOOP UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index)); v_index := v_index + 32000; END LOOP;

UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

UTL_SMTP.close_data(v_connection); UTL_SMTP.quit(v_connection);EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);END;

As you can see, most of the code is the same.  You may note in both examples I constructed a CLOB prior to starting the email rather than iterating through the cursor and writing directly to the SMTP connection.  I have multiple reasons for this design.  First, SMTP servers will often have timeout limits on them.  In this example the query should return fairly quickly, but as general practice this is unreliable because other queries might not.  So rather than open a connection, start a query and then have the connection timeout before getting the data, I make a habit of constructing my content first then initiating the email connections.  I can also check the content by writing to dbms_output or log the content to tables or files instead of or in addition to attempting to send it outside the server via email.  For fixed and/or small content this may not matter but as your email body gets more complex it's something to keep in

Page 5: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

mind.  The last reason I wrote it this way is as a lead in to some of the wrapper API functionality I will demonstrate later.  Just as UTL_MAIL allows you to send an entire 32K varchar2 attachment in a single step, I will construct a similar routine that will support larger content and if our code already constructs a CLOB then emailing it will be a single procedure call similar to that of the UTL_MAIL.

Embedding multiple objects or attachments

Just as MIME requires some header information to declare how you're going to use it, it also wants to know when you are done.  Thus, if you embed multiple MIME blocks, each block is surrounded by the defined boundary tags.  The last block should have additional information in its tag to indicate the MIME blocks are done and normal email content will resume.  Many email clients are forgiving on this requirement and will simply read MIME blocks until they can't find anymore and don't really look for the end tag; but I don't recommend relying on this practice.  In the example above there is only one attachment so the first attachment is also the last and you can see the boundary is appended after the content and suffixed with two dashes.  The extra dashes are all that is needed to tell MIME you're done embedding blocks.  To send multiple attachments, it's simply a matter of writing the boundary before each block and describing what the content is.  As noted previously, the package provided below includes routines to make the multiple embeddings easier.  Its common practice for the MIME boundary to be a string of hexadecimal digits but it's not strictly necessary.  As seen in the next example, I've changed the boundary literally to the string "the boundary can be almost anything."

DECLARE v_connection UTL_SMTP.connection; c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything';

v_clob CLOB; v_len INTEGER; v_index INTEGER;BEGIN SELECT encode_blob_as_clob(blobimage) INTO v_clob FROM my_images WHERE id = 1;

v_connection := UTL_SMTP.open_connection(:p_smtp_server); UTL_SMTP.helo(v_connection, :p_domain); UTL_SMTP.mail(v_connection, :p_from); UTL_SMTP.rcpt(v_connection, :p_to); UTL_SMTP.open_data(v_connection);

UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Subject: test blob' || UTL_TCP.crlf);

Page 6: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

UTL_SMTP.write_data( v_connection, 'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'This is a multi-part message in MIME format.' || UTL_TCP.crlf );

UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'Content-Disposition: attachment; filename="' || 'my_text_file.txt' || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

UTL_SMTP.write_data(v_connection, 'sample text line 1' || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'sample text line 2' || UTL_TCP.crlf);

UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'Content-Type: image/jpeg' || UTL_TCP.crlf || 'Content-Transfer-Encoding: base64' || UTL_TCP.crlf );

UTL_SMTP.write_data( v_connection, 'Content-Disposition: attachment; filename="' || 'my blob_file.jpg' || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

v_len := DBMS_LOB.getlength(v_clob); v_index := 1;

WHILE v_index <= v_len LOOP UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index)); v_index := v_index + 32000; END LOOP;

UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

Page 7: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

UTL_SMTP.close_data(v_connection); UTL_SMTP.quit(v_connection);EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);END;

The encode_blob_as_clob function shown in the previous example is included in the sample code for this article.It accepts a blob value,  encodes it in Base-64 then writes the encoded data to a CLOB that can then be added to the email body as any other text content would.

Pay attention to your boundaries and your content

The attachments are little more than a complicated CSV or other delimited file.Each attachment starts when the MIME boundary is found and it ends when the next boundary is reached (or, as noted above, when the email ends, but it is bad practice to leave the attachment list unbounded on the end.)  In the following example,  I send nearly the same information as I did above, except I have reversed the order of the content.  First I write the blob then the text. Also note, I have included an extra line of text  "here is some text" but the placement of it puts that line within the attachment area of the blob image.

BEGIN DECLARE v_connection UTL_SMTP.connection; c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything';

v_clob CLOB; v_len INTEGER; v_index INTEGER; BEGIN SELECT encode_blob_as_clob(blobimage) INTO v_clob FROM my_images WHERE id = 1;

v_connection := UTL_SMTP.open_connection(:p_smtp_server); UTL_SMTP.helo(v_connection, :p_domain); UTL_SMTP.mail(v_connection, :p_from); UTL_SMTP.rcpt(v_connection, :p_to);

Page 8: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.open_data(v_connection);

UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Subject: test blob' || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf);

UTL_SMTP.write_data( v_connection, 'Content-Type: multipart/mixed; boundary="' || c_mime_boundary || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'This is a multi-part message in MIME format.' || UTL_TCP.crlf );

UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'Content-Type: image/jpeg' || UTL_TCP.crlf || 'Content-Transfer-Encoding: base64' || UTL_TCP.crlf );

UTL_SMTP.write_data( v_connection, 'Content-Disposition: attachment; filename="' || 'my blob_file.jpg' || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

v_len := DBMS_LOB.getlength(v_clob); v_index := 1;

WHILE v_index <= v_len LOOP UTL_SMTP.write_data(v_connection, DBMS_LOB.SUBSTR(v_clob, 32000, v_index)); v_index := v_index + 32000; END LOOP;

UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

UTL_SMTP.write_data(v_connection, 'here is some text' || UTL_TCP.crlf);

Page 9: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Content-Type: text/plain' || UTL_TCP.crlf); UTL_SMTP.write_data( v_connection, 'Content-Disposition: attachment; filename="' || 'my_text_file.txt' || '"' || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

UTL_SMTP.write_data(v_connection, 'sample text line 1' || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'sample text line 2' || UTL_TCP.crlf);

UTL_SMTP.write_data(v_connection, UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, '--' || c_mime_boundary || '--' || UTL_TCP.crlf);

UTL_SMTP.close_data(v_connection); UTL_SMTP.quit(v_connection); EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack); END;END;

How to Send Email Attachments with Oracle

Easy API's

As promised earlier, in the code blocks below are procedures to allow for easier sending of attachments.First, I'll provide a routine that mimic the structure of the UTL_MAIL routines, the difference will be that it accept CLOB and BLOB input rather than the smaller VARCHAR2 and RAW.

Using SDSEMAIL.SEND_ATTACH_BLOB and SDSEMAIL.SEND_ATTACH_CLOB is much the same as using UTL_MAIL.SEND_ATTACH_RAW or UTL_MAIL.SEND_ATTACH_TEXT  with the obvious difference that the procedure supports BLOB or CLOB type attachments instead of RAW or VARCHAR2 type.  Similarly the message text is also a CLOB type.

Page 10: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

DECLARE v_blob blob; v_message clob := 'messge text';BEGIN SELECT blobimage INTO v_blob FROM my_images WHERE id = 1; sdsemail.send_attach_blob( p_sender => :p_from, p_recipients => :p_to, p_subject => 'Test msg', p_message => v_message, p_attachment => v_blob, p_att_inline => FALSE, p_att_mime_type => 'image/jpeg', p_att_filename => 'test.jpg' );END;

The SDSEMAIL package also includes routines for more complicated attachment choices.  However, this does require more code.  In the example below I'm creating an email of three MIME blocks.  The first is a plain text message body,  the second is a BLOB image and the third a text file.  Note the "last" parameter is FALSE for the first two, but the text file is TRUE because it is the last mime block in the email.

DECLARE v_connection UTL_SMTP.connection; c_mime_boundary CONSTANT VARCHAR2(256) := 'the boundary can be almost anything'; v_blob BLOB; v_text VARCHAR2(100) := 'This is my test text attachment';BEGIN SELECT blobimage INTO v_blob FROM my_images WHERE id = 1;

v_connection := UTL_SMTP.open_connection(:p_smtp_server); UTL_SMTP.helo(v_connection, :p_domain); UTL_SMTP.mail(v_connection, :p_from); UTL_SMTP.rcpt(v_connection, :p_to); UTL_SMTP.open_data(v_connection);

UTL_SMTP.write_data(v_connection, 'From: ' || :p_from || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'To: ' || :p_to || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Subject: Test attachments' || UTL_TCP.crlf);

Page 11: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || UTL_TCP.crlf); sdsemail.set_mime_boundary(c_mime_boundary); UTL_SMTP.write_data( v_connection, 'Content-Type: ' || sdsemail.multipart_mime_type || UTL_TCP.crlf ); UTL_SMTP.write_data(v_connection, UTL_TCP.crlf);

UTL_SMTP.write_data( v_connection, 'This is a multi-part message in MIME format.' || UTL_TCP.crlf );

sdsemail.begin_mime_block(v_connection); UTL_SMTP.write_data(v_connection, 'Test text1' || UTL_TCP.crlf); UTL_SMTP.write_data(v_connection, 'Test text2' || UTL_TCP.crlf); sdsemail.end_mime_block(v_connection, FALSE);

sdsemail.attach_blob( v_connection, v_blob, 'image/jpeg', FALSE, 'test.jpg', FALSE );

sdsemail.attach_text( p_connection => v_connection, p_data => v_text, p_inline => FALSE, p_filename => 'test.txt', p_last => TRUE );

UTL_SMTP.close_data(v_connection); UTL_SMTP.quit(v_connection);EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line(DBMS_UTILITY.format_error_stack);END;

Package source code

In addition to the main "SEND" routines that mimic and extend UTL_MAIL, I've also included some logging options that will write to dbms_output, a rolling buffer or v$session.  Furthermore, I've also added the ability to specify a list of servers that will be checked instead of using the SMTP_OUT_SERVER or DB_DOMAIN parameters.  If the list is NULL, then the initialization parameters will be used according to the UTL_MAIL documentation, also note, a NULL SMTP server will cascade over to DB_DOMAIN correctly unlike

Page 12: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_MAIL which has a bug in it.

Package header

CREATE OR REPLACE PACKAGE sdsemailAS -- .///. -- (0 o) ---------------0000--(_)--0000--------------- -- -- Sean D. Stuber -- [email protected] -- -- oooO Oooo --------------( )-----( )--------------- -- \ ( ) / -- \_) (_/

SUBTYPE connection IS UTL_SMTP.connection;

invalid_argument EXCEPTION; invalid_priority EXCEPTION;

PRAGMA EXCEPTION_INIT(invalid_argument, -29261); PRAGMA EXCEPTION_INIT(invalid_priority, -44101);

c_log_off CONSTANT INTEGER := 0; c_log_dbms_output CONSTANT INTEGER := 1; c_log_rolling_buffer CONSTANT INTEGER := 2; c_log_client_info CONSTANT INTEGER := 4; c_default_verbose CONSTANT BOOLEAN := FALSE;

PROCEDURE set_log_options(p_log_options IN INTEGER);

FUNCTION get_log_options RETURN INTEGER;

PROCEDURE clear_log;

FUNCTION get_log_text RETURN VARCHAR2;

PROCEDURE set_verbose(p_verbose IN BOOLEAN);

FUNCTION get_verbose RETURN BOOLEAN;

PROCEDURE write_to_log(v_text IN VARCHAR2, p_verbose IN BOOLEAN DEFAULT FALSE);

PROCEDURE send( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2 DEFAULT NULL,

Page 13: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

p_bcc IN VARCHAR2 DEFAULT NULL, p_subject IN VARCHAR2 DEFAULT NULL, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_priority IN PLS_INTEGER DEFAULT 3, p_replyto IN VARCHAR2 DEFAULT NULL, p_server_list IN VARCHAR2 DEFAULT NULL );

PROCEDURE send_attach_clob( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2 DEFAULT NULL, p_bcc IN VARCHAR2 DEFAULT NULL, p_subject IN VARCHAR2 DEFAULT NULL, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_priority IN PLS_INTEGER DEFAULT 3, p_attachment IN OUT NOCOPY CLOB, p_att_inline IN BOOLEAN DEFAULT TRUE, p_att_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_att_filename IN VARCHAR2 DEFAULT NULL, p_replyto IN VARCHAR2 DEFAULT NULL, p_server_list IN VARCHAR2 DEFAULT NULL );

PROCEDURE send_attach_blob( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2 DEFAULT NULL, p_bcc IN VARCHAR2 DEFAULT NULL, p_subject IN VARCHAR2 DEFAULT NULL, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_priority IN PLS_INTEGER DEFAULT 3, p_attachment IN OUT NOCOPY BLOB, p_att_inline IN BOOLEAN DEFAULT TRUE, p_att_mime_type IN VARCHAR2 DEFAULT 'application/octet-stream', p_att_filename IN VARCHAR2 DEFAULT NULL, p_replyto IN VARCHAR2 DEFAULT NULL, p_server_list IN VARCHAR2 DEFAULT NULL );

PROCEDURE set_mime_boundary(p_boundary IN VARCHAR2);

FUNCTION get_mime_boundary RETURN VARCHAR2;

FUNCTION multipart_mime_type RETURN VARCHAR2;

Page 14: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

PROCEDURE attach_text( p_connection IN OUT NOCOPY connection, p_data IN VARCHAR2, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE );

PROCEDURE attach_clob( p_connection IN OUT NOCOPY connection, p_data IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE );

PROCEDURE attach_raw( p_connection IN OUT NOCOPY connection, p_data IN RAW, p_mime_type IN VARCHAR2 DEFAULT 'application/octet-stream', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE );

PROCEDURE attach_blob( p_connection IN OUT NOCOPY connection, p_data IN OUT NOCOPY BLOB, p_mime_type IN VARCHAR2 DEFAULT 'application/octet-stream', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE );

PROCEDURE begin_mime_block( p_connection IN OUT NOCOPY connection, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_transfer_enc IN VARCHAR2 DEFAULT NULL );

PROCEDURE end_mime_block( p_connection IN OUT NOCOPY connection, p_last IN BOOLEAN DEFAULT FALSE );END sdsemail;

Page 15: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

Package Body

CREATE OR REPLACE PACKAGE BODY sdsemailAS -- .///. -- (0 o) ---------------0000--(_)--0000--------------- -- -- Sean D. Stuber -- [email protected] -- -- oooO Oooo --------------( )-----( )--------------- -- \ ( ) / -- \_) (_/

c_base64_line CONSTANT PLS_INTEGER := 57; c_crlf VARCHAR2(2) := UTL_TCP.crlf; /* If a default SMTP server is specified here it will be used when the user doesn't specify a server list to try instead of checking smtp_out_server and db_domain initialization parameters.

*/ c_default_smtp_server CONSTANT VARCHAR2(100) := NULL; c_default_smtp_port CONSTANT INTEGER := 25;

g_boundary VARCHAR2(256);

/* Logging/debugging options */ g_log_options INTEGER := c_log_dbms_output; g_log_text VARCHAR2(32767) := NULL; g_verbose BOOLEAN := c_default_verbose;

--------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------*/

-- write the text to each logging option that is currently enabled -- verbose comments will not be logged if verbose mode is off. PROCEDURE write_to_log(v_text IN VARCHAR2, p_verbose IN BOOLEAN DEFAULT FALSE) IS BEGIN -- If global verbose setting is ON (meaning log everything) -- or if this text is not verbose then log it. IF g_verbose OR NOT p_verbose THEN IF BITAND(g_log_options, c_log_dbms_output) > 0 THEN

Page 16: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

DBMS_OUTPUT.put_line(v_text); END IF;

IF BITAND(g_log_options, c_log_rolling_buffer) > 0 THEN IF LENGTH(g_log_text) + LENGTH(c_crlf) + LENGTH(v_text) > 32767 THEN g_log_text := SUBSTR(g_log_text, INSTR(g_log_text, c_crlf, LENGTH(v_text) + 2)); END IF;

g_log_text := g_log_text || v_text || c_crlf; END IF;

IF BITAND(g_log_options, c_log_client_info) > 0 THEN DBMS_APPLICATION_INFO.set_client_info(v_text); END IF; END IF; END write_to_log;

-- When verbose mode is TRUE then additional information will be written to the logs. -- If logging is turned off then verbose mode won't add anything. PROCEDURE set_verbose(p_verbose IN BOOLEAN) IS BEGIN g_verbose := NVL(p_verbose, c_default_verbose);

IF p_verbose THEN write_to_log('Switching logging to verbose mode', TRUE); END IF; END set_verbose;

-- Returns the current setting of verbose mode (true/false) FUNCTION get_verbose RETURN BOOLEAN IS BEGIN RETURN g_verbose; END get_verbose;

-- Turn off logging (options=0) or turn on different options (see c_log_xxxxx constants) PROCEDURE set_log_options(p_log_options IN INTEGER) IS BEGIN -- options big mask must be between 0 and sum of all possible log options. IF p_log_options < 0 OR p_log_options > c_log_dbms_output + c_log_rolling_buffer + c_log_client_info THEN raise_application_error(

Page 17: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

-20001, 'Invalid log options, must be between 0 and ' || TO_CHAR(c_log_dbms_output + c_log_rolling_buffer + c_log_client_info), TRUE ); END IF;

g_log_options := p_log_options; END set_log_options;

-- Return current logging options FUNCTION get_log_options RETURN INTEGER IS BEGIN RETURN g_log_options; END get_log_options;

-- Clears (null) the logging buffers PROCEDURE clear_log IS BEGIN -- Clear the log buffer g_log_text := NULL;

-- if logging to session client then clear that too IF BITAND(g_log_options, c_log_client_info) > 0 THEN DBMS_APPLICATION_INFO.set_client_info(NULL); END IF; END clear_log;

-- Return the current contents of the rolling log buffer FUNCTION get_log_text RETURN VARCHAR2 IS BEGIN RETURN g_log_text; END get_log_text;

--------------------------------------------------------------------------- ---------------------------------------------------------------------------

FUNCTION find_a_server(p_server_list IN VARCHAR2 DEFAULT NULL) RETURN connection IS v_servers VARCHAR2(32767); v_start INTEGER := 1; v_index INTEGER; v_port_split INTEGER; v_host VARCHAR2(32767); v_port INTEGER; v_connected BOOLEAN := FALSE;

Page 18: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

v_length INTEGER; v_connection UTL_SMTP.connection; v_reply UTL_SMTP.reply; BEGIN -- Enteries should be of the from -- host[:port][,host[:port]][,host[:port]][,host[:port]]... -- If the user didn't specify a list, and there is no default -- then use the UTL_MAIL parameters -- Use smtp_out_server if available or db_domain if not IF p_server_list IS NULL THEN IF c_default_smtp_server IS NULL THEN SELECT * INTO v_servers FROM (SELECT TRIM(VALUE) FROM v$parameter WHERE name IN ('smtp_out_server', 'db_domain') AND TRIM(VALUE) IS NOT NULL ORDER BY name DESC) WHERE ROWNUM = 1; ELSE v_servers := c_default_smtp_server || ':' || c_default_smtp_port; END IF; ELSE v_servers := p_server_list; END IF;

v_length := LENGTH(v_servers);

LOOP v_index := INSTR(v_servers, ',', v_start);

IF v_index = 0 THEN v_port_split := INSTR(v_servers, ':');

IF v_port_split > 0 THEN v_host := SUBSTR(v_servers, 1, v_port_split - 1); v_port := TO_NUMBER(SUBSTR(v_servers, v_port_split + 1)); ELSE v_host := TRIM(v_servers); v_port := c_default_smtp_port; END IF;

v_start := v_length + 1; ELSE v_host := SUBSTR(v_servers, v_start, v_index - v_start); v_port_split := INSTR(v_host, ':');

IF v_port_split > 0 THEN v_port := TO_NUMBER(SUBSTR(v_host, v_port_split + 1));

Page 19: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

v_host := SUBSTR(v_host, 1, v_port_split - 1); ELSE v_port := c_default_smtp_port; END IF;

v_start := v_index + 1; END IF;

BEGIN write_to_log( 'find_a_server: trying - ' || v_connection.HOST || ':' || v_connection.port, TRUE ); v_connection := UTL_SMTP.open_connection(v_host, v_port); UTL_SMTP.helo(v_connection, v_host); v_connected := TRUE; EXCEPTION WHEN OTHERS THEN write_to_log( 'find_a_server: failed - ' || v_connection.HOST || ':' || v_connection.port, TRUE );

-- If we've walked off the end of the server list -- without getting connected then raise the last error -- received from the attempt -- otherwise, we'll try again with the next server/port IF v_start > v_length THEN write_to_log('find_a_server: failed all hosts in server list', TRUE); RAISE; END IF; END;

EXIT WHEN v_connected; END LOOP;

write_to_log('find_a_server: ' || v_connection.HOST || ':' || v_connection.port); RETURN v_connection; END find_a_server;

FUNCTION instr_enc( p_string IN VARCHAR2, p_substring IN VARCHAR2, p_start IN INTEGER DEFAULT 1, p_occurence IN INTEGER DEFAULT 1, p_enclosing IN VARCHAR2 DEFAULT NULL, p_escape IN VARCHAR2 DEFAULT '\' ) RETURN INTEGER IS

Page 20: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

v_occur_cnt INTEGER := 0; v_sub_idx INTEGER; v_sub_len INTEGER := LENGTH(p_substring); v_enc_idx INTEGER; v_enc_len INTEGER := LENGTH(p_enclosing); v_esc_idx INTEGER; v_esc_len INTEGER := LENGTH(p_escape); v_index INTEGER := p_start; v_enclosed BOOLEAN := FALSE; v_max INTEGER := LENGTH(p_string) + 1;

FUNCTION first_found(a IN INTEGER, b IN INTEGER, c INTEGER) RETURN INTEGER IS v_result INTEGER; BEGIN v_result := LEAST(NVL(NULLIF(a, 0), v_max), NVL(NULLIF(b, 0), v_max), NVL(NULLIF(c, 0), v_max));

IF v_result = v_max THEN v_result := 0; END IF;

RETURN v_result; END; BEGIN IF p_enclosing IS NULL THEN v_index := INSTR( p_string, p_substring, p_start, p_occurence ); ELSE LOOP v_sub_idx := INSTR(p_string, p_substring, v_index); v_enc_idx := INSTR(p_string, p_enclosing, v_index); v_esc_idx := INSTR(p_string, p_escape || p_enclosing, v_index);

v_index := first_found(v_sub_idx, v_enc_idx, v_esc_idx);

IF GREATEST(v_sub_idx, v_enc_idx, v_esc_idx) = 0 THEN NULL; ELSIF v_index = v_esc_idx -- escape character found THEN v_index := v_index + v_esc_len + v_enc_len; ELSIF v_index = v_enc_idx -- enclosing character found THEN v_enclosed := NOT v_enclosed; v_index := v_index + v_enc_len;

Page 21: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

ELSE -- substring found IF v_enclosed THEN v_index := v_index + v_sub_len; ELSE -- not enclosed v_occur_cnt := v_occur_cnt + 1;

IF v_occur_cnt < p_occurence THEN v_index := v_index + v_sub_len; END IF; END IF; END IF;

EXIT WHEN v_index > LENGTH(p_string) OR v_index = 0 OR v_occur_cnt = p_occurence; END LOOP; END IF;

RETURN v_index; END;

FUNCTION extract_address(p_string IN VARCHAR2) RETURN VARCHAR2 IS v_bracket_start INTEGER; v_bracket_end INTEGER; v_result VARCHAR2(32767) := TRIM(p_string); BEGIN v_bracket_start := instr_enc( v_result, '<', 1, 1, '"' );

IF v_bracket_start > 0 THEN v_bracket_end := instr_enc( v_result, '>', v_bracket_start + 1, 1, '"' );

IF v_bracket_end > 0 THEN v_result := SUBSTR(v_result, v_bracket_start + 1, v_bracket_end - v_bracket_start - 1); END IF; END IF;

Page 22: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

-- Take out any tab, line feed or carriage return characters -- that might have been used to visually format the strings RETURN TRIM(TRANSLATE(v_result, 'a' || CHR(9) || CHR(10) || CHR(13), 'a')); END extract_address;

PROCEDURE parse_email_list(p_addresses IN VARCHAR2, p_list IN OUT NOCOPY DBMS_SQL.varchar2s) IS v_length INTEGER := LENGTH(p_addresses); v_start INTEGER := 1; v_delim_index INTEGER; BEGIN WHILE (v_start <= v_length) LOOP v_delim_index := instr_enc( p_addresses, ',', v_start, 1, '"' );

IF v_delim_index = 0 THEN p_list(p_list.COUNT + 1) := extract_address(SUBSTR(p_addresses, v_start)); v_start := v_length + 1; ELSE p_list(p_list.COUNT + 1) := extract_address(SUBSTR(p_addresses, v_start, v_delim_index - v_start)); v_start := v_delim_index + 1; END IF; END LOOP; END parse_email_list;

PROCEDURE begin_mime_block( p_connection IN OUT NOCOPY connection, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_transfer_enc IN VARCHAR2 DEFAULT NULL ) IS BEGIN UTL_SMTP.write_data(p_connection, '--' || g_boundary || c_crlf); UTL_SMTP.write_data(p_connection, 'Content-Type: ' || p_mime_type || c_crlf);

IF (p_transfer_enc IS NOT NULL) THEN UTL_SMTP.write_data(

Page 23: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

p_connection, 'Content-Transfer-Encoding: ' || p_transfer_enc || c_crlf ); END IF;

IF (p_filename IS NOT NULL) THEN IF (p_inline) THEN UTL_SMTP.write_data( p_connection, 'Content-Disposition: inline; filename="' || p_filename || '"' || c_crlf ); ELSE UTL_SMTP.write_data( p_connection, 'Content-Disposition: attachment; filename="' || p_filename || '"' || c_crlf ); END IF; END IF;

UTL_SMTP.write_data(p_connection, c_crlf); END begin_mime_block;

------------------------------------------------------------------------ PROCEDURE end_mime_block( p_connection IN OUT NOCOPY connection, p_last IN BOOLEAN DEFAULT FALSE ) IS BEGIN UTL_SMTP.write_data(p_connection, c_crlf);

IF (p_last) THEN UTL_SMTP.write_data(p_connection, '--' || g_boundary || '--' || c_crlf); END IF; END end_mime_block;

PROCEDURE write_clob(p_connection IN OUT NOCOPY connection, p_clob IN OUT NOCOPY CLOB) IS v_len INTEGER; v_index INTEGER; BEGIN v_len := DBMS_LOB.getlength(p_clob); v_index := 1;

write_to_log('Starting write_clob: ' || TO_CHAR(v_len) || ' characters', TRUE);

WHILE v_index <= v_len LOOP

Page 24: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(p_connection, DBMS_LOB.SUBSTR(p_clob, 32000, v_index)); v_index := v_index + 32000; END LOOP;

write_to_log('End write_clob: ' || TO_CHAR(v_len) || ' characters', TRUE); END write_clob;

PROCEDURE write_blob(p_connection IN OUT NOCOPY connection, p_blob IN OUT NOCOPY BLOB) IS v_len INTEGER; v_index INTEGER; v_chunk RAW(32767); BEGIN v_len := DBMS_LOB.getlength(p_blob); v_index := 1;

write_to_log('Starting write_blob: ' || TO_CHAR(v_len) || ' bytes', TRUE);

WHILE v_index <= v_len LOOP v_chunk := DBMS_LOB.SUBSTR(p_blob, c_base64_line, v_index); v_index := v_index + c_base64_line;

UTL_SMTP.write_data( p_connection, UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(v_chunk)) ); END LOOP;

write_to_log('End write_blob: ' || TO_CHAR(v_len) || ' bytes', TRUE); END write_blob;

PROCEDURE send_all( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2, p_bcc IN VARCHAR2, p_subject IN VARCHAR2, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2, p_priority IN PLS_INTEGER, p_clob IN OUT NOCOPY CLOB, p_blob IN OUT NOCOPY BLOB, p_att_inline IN BOOLEAN, p_att_mime_type IN VARCHAR2, p_att_filename IN VARCHAR2, p_replyto IN VARCHAR2, p_server_list IN VARCHAR2 ) IS v_connection UTL_SMTP.connection;

Page 25: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

v_address_list DBMS_SQL.varchar2s; v_reply UTL_SMTP.reply; BEGIN v_connection := find_a_server(p_server_list);

v_reply := UTL_SMTP.mail(v_connection, extract_address(p_sender)); write_to_log( 'Mail(' || p_sender || '): ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text );

IF (p_recipients IS NOT NULL) THEN parse_email_list(p_recipients, v_address_list); END IF;

IF (p_cc IS NOT NULL) THEN parse_email_list(p_cc, v_address_list); END IF;

IF (p_bcc IS NOT NULL) THEN parse_email_list(p_bcc, v_address_list); END IF;

IF v_address_list.COUNT > 0 THEN FOR i IN 1 .. v_address_list.COUNT LOOP v_reply := UTL_SMTP.rcpt(v_connection, v_address_list(i)); write_to_log( 'Rcpt(' || v_address_list(i) || '): ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text ); END LOOP; END IF;

v_reply := UTL_SMTP.open_data(v_connection); write_to_log('Open Data: ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text);

IF (p_sender IS NOT NULL) THEN UTL_SMTP.write_data(v_connection, 'From: ' || p_sender || c_crlf); ELSE RAISE invalid_argument; END IF;

IF (p_recipients IS NOT NULL) THEN

Page 26: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

UTL_SMTP.write_data(v_connection, 'To: ' || p_recipients || c_crlf); END IF;

IF (p_cc IS NOT NULL) THEN UTL_SMTP.write_data(v_connection, 'CC: ' || p_cc || c_crlf); END IF;

IF (p_replyto IS NOT NULL) THEN UTL_SMTP.write_data(v_connection, 'Reply-To: ' || extract_address(p_replyto) || c_crlf); END IF;

UTL_SMTP.write_data(v_connection, 'Subject: ' || p_subject || c_crlf);

IF p_priority BETWEEN 1 AND 5 THEN UTL_SMTP.write_data(v_connection, 'X-Priority: ' || p_priority || c_crlf); ELSE RAISE invalid_priority; END IF;

IF p_clob IS NOT NULL OR p_blob IS NOT NULL THEN UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || c_crlf); UTL_SMTP.write_data(v_connection, 'Content-Type: ' || multipart_mime_type || c_crlf); UTL_SMTP.write_data(v_connection, c_crlf); UTL_SMTP.write_data( v_connection, 'This is a multi-part message in MIME format.' || c_crlf );

IF p_message IS NOT NULL THEN attach_clob( v_connection, p_message, p_mime_type, TRUE, NULL, FALSE ); END IF;

IF p_clob IS NOT NULL THEN attach_clob( v_connection, p_clob, p_att_mime_type,

Page 27: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

p_att_inline, p_att_filename, TRUE ); END IF;

IF p_blob IS NOT NULL THEN attach_blob( v_connection, p_blob, p_att_mime_type, p_att_inline, p_att_filename, TRUE ); END IF; ELSE IF p_mime_type IS NOT NULL THEN UTL_SMTP.write_data(v_connection, 'MIME-Version: 1.0' || c_crlf); UTL_SMTP.write_data(v_connection, 'Content-Type: ' || p_mime_type || c_crlf); UTL_SMTP.write_data(v_connection, c_crlf); END IF;

IF p_message IS NOT NULL THEN write_clob(v_connection, p_message); END IF; END IF;

v_reply := UTL_SMTP.close_data(v_connection); write_to_log('Close_Data:' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text);

v_reply := UTL_SMTP.quit(v_connection); write_to_log('Quit: ' || TO_CHAR(v_reply.code, 'fm009') || ' ' || v_reply.text); EXCEPTION WHEN OTHERS THEN IF (v_connection.HOST IS NOT NULL) THEN UTL_SMTP.quit(v_connection); END IF;

RAISE; END send_all;

PROCEDURE send( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2 DEFAULT NULL, p_bcc IN VARCHAR2 DEFAULT NULL,

Page 28: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

p_subject IN VARCHAR2 DEFAULT NULL, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_priority IN PLS_INTEGER DEFAULT 3, p_replyto IN VARCHAR2 DEFAULT NULL, p_server_list IN VARCHAR2 DEFAULT NULL ) IS v_dummyclob CLOB := NULL; v_dummyblob BLOB := NULL; BEGIN send_all( p_sender, p_recipients, p_cc, p_bcc, p_subject, p_message, p_mime_type, p_priority, v_dummyclob, v_dummyblob, NULL, NULL, NULL, NULL, p_server_list ); END send;

PROCEDURE send_attach_clob( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2 DEFAULT NULL, p_bcc IN VARCHAR2 DEFAULT NULL, p_subject IN VARCHAR2 DEFAULT NULL, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_priority IN PLS_INTEGER DEFAULT 3, p_attachment IN OUT NOCOPY CLOB, p_att_inline IN BOOLEAN DEFAULT TRUE, p_att_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_att_filename IN VARCHAR2 DEFAULT NULL, p_replyto IN VARCHAR2 DEFAULT NULL, p_server_list IN VARCHAR2 DEFAULT NULL ) IS v_dummy BLOB := NULL; BEGIN send_all( p_sender, p_recipients, p_cc,

Page 29: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

p_bcc, p_subject, p_message, p_mime_type, p_priority, p_attachment, v_dummy, p_att_inline, p_att_mime_type, p_att_filename, p_replyto, p_server_list ); END send_attach_clob;

PROCEDURE send_attach_blob( p_sender IN VARCHAR2, p_recipients IN VARCHAR2, p_cc IN VARCHAR2 DEFAULT NULL, p_bcc IN VARCHAR2 DEFAULT NULL, p_subject IN VARCHAR2 DEFAULT NULL, p_message IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_priority IN PLS_INTEGER DEFAULT 3, p_attachment IN OUT NOCOPY BLOB, p_att_inline IN BOOLEAN DEFAULT TRUE, p_att_mime_type IN VARCHAR2 DEFAULT 'application/octet-stream', p_att_filename IN VARCHAR2 DEFAULT NULL, p_replyto IN VARCHAR2 DEFAULT NULL, p_server_list IN VARCHAR2 DEFAULT NULL ) IS v_dummy CLOB := NULL; BEGIN send_all( p_sender, p_recipients, p_cc, p_bcc, p_subject, p_message, p_mime_type, p_priority, v_dummy, p_attachment, p_att_inline, p_att_mime_type, p_att_filename, p_replyto, p_server_list ); END send_attach_blob;

PROCEDURE set_mime_boundary(p_boundary IN VARCHAR2)

Page 30: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

IS BEGIN g_boundary := p_boundary; END;

FUNCTION get_mime_boundary RETURN VARCHAR2 IS BEGIN RETURN g_boundary; END;

FUNCTION multipart_mime_type RETURN VARCHAR2 IS BEGIN RETURN 'multipart/mixed; boundary="' || g_boundary || '"'; END;

PROCEDURE attach_text( p_connection IN OUT NOCOPY connection, p_data IN VARCHAR2, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE ) IS BEGIN begin_mime_block( p_connection, p_mime_type, p_inline, p_filename ); UTL_SMTP.write_data(p_connection, p_data); end_mime_block(p_connection, p_last); END attach_text;

PROCEDURE attach_clob( p_connection IN OUT NOCOPY connection, p_data IN OUT NOCOPY CLOB, p_mime_type IN VARCHAR2 DEFAULT 'text/plain;charset=us-ascii', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE ) IS BEGIN begin_mime_block( p_connection, p_mime_type, p_inline, p_filename

Page 31: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

);

write_clob(p_connection, p_data);

end_mime_block(p_connection, p_last); END attach_clob;

PROCEDURE attach_raw( p_connection IN OUT NOCOPY connection, p_data IN RAW, p_mime_type IN VARCHAR2 DEFAULT 'application/octet-stream', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE ) IS BEGIN begin_mime_block( p_connection, p_mime_type, p_inline, p_filename, 'base64' );

UTL_SMTP.write_raw_data( p_connection, UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(p_data)) );

end_mime_block(p_connection, p_last); END attach_raw;

PROCEDURE attach_blob( p_connection IN OUT NOCOPY connection, p_data IN OUT NOCOPY BLOB, p_mime_type IN VARCHAR2 DEFAULT 'application/octet-stream', p_inline IN BOOLEAN DEFAULT TRUE, p_filename IN VARCHAR2 DEFAULT NULL, p_last IN BOOLEAN DEFAULT FALSE ) IS BEGIN begin_mime_block( p_connection, p_mime_type, p_inline, p_filename, 'base64' );

write_blob(p_connection, p_data);

end_mime_block(p_connection, p_last);

Page 32: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

END attach_blob;BEGIN g_boundary := '--' || RAWTOHEX(SYS_GUID());END sdsemail;

Sample Data

In some of the examples above I send jpg files from a table called MY_IMAGES.That table and sample data can be recreated with the following script.The raw content is a small smiley face, the larger blob content is a photo of a penny.

CREATE TABLE my_images( id NUMBER, rawimage RAW(2000), blobimage BLOB);

INSERT INTO my_images(id, rawimage)VALUES (1,HEXTORAW('FFD8FFE000104A46494600010101006000600000FFDB004300020101020101020' ||'2020202020202030503030303030604040305070607070706070708090B090808' ||'0A0807070A0D0A0A0B0C0C0C0C07090E0F0D0C0E0B0C0C0CFFDB0043010202020' ||'30303060303060C0807080C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C' ||'0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0CFFC000110' ||'8000A000A03012200021101031101FFC4001F0000010501010101010100000000' ||'000000000102030405060708090A0BFFC400B5100002010303020403050504040' ||'000017D01020300041105122131410613516107227114328191A1082342B1C115' ||'52D1F02433627282090A161718191A25262728292A3435363738393A434445464' ||'748494A535455565758595A636465666768696A737475767778797A8384858687' ||'88898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C' ||'4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7' ||'F8F9FAFFC4001F010003010101010101010101000000000000010203040506070' ||'8090A0BFFC400B511000201020404030407050404000102770001020311040521' ||'31061241510761711322328108144291A1B1C109233352F0156272D10A162434E' ||'125F11718191A262728292A35363738393A434445464748494A53545556575859' ||'5A636465666768696A737475767778797A82838485868788898A9293949596979' ||'8999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4' ||'D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C030100021' ||'10311003F00FD8FF8A1ADDE7FC241E3192DBE286BBA0DB2B6990ADADB5858CB36' ||'813DACE93CB0DB43242D2DCBEA514C90E0ACB8C2F95B5D80AF6DAA17DE16D2F53' ||'D56DEFEE74DB0B8BEB4C791712DBA3CB0E338DAC4657193D0F7357E803FFFD9'));

declarev_lob blob;beginDBMS_LOB.CREATETEMPORARY(v_lob,true,dbms_lob.call);

Page 33: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('FFD8FFE000104A4649460001010100E600E60000FFE13A0A457869660000'));dbms_lob.writeappend(v_lob,30,hextoraw('4D4D002A000000080007011200030000000100010000011A000500000001'));dbms_lob.writeappend(v_lob,30,hextoraw('0000086E011B000500000001000008760128000300000001000200000213'));dbms_lob.writeappend(v_lob,30,hextoraw('0003000000010001000087690004000000010000087EEA1C00070000080C'));dbms_lob.writeappend(v_lob,30,hextoraw('0000006200002FE61CEA0000000800000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 34: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 35: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00E600000001000000E600000001001A829A000500000001000011C8829D'));dbms_lob.writeappend(v_lob,30,hextoraw('000500000001000011D09101000700000004010203009201000A00000001'));dbms_lob.writeappend(v_lob,30,hextoraw('000011D89202000500000001000011E09204000A00000001000011E89205'));dbms_lob.writeappend(v_lob,30,hextoraw('000500000001000011F0920A000500000001000011F8927C000700001DC0'));dbms_lob.writeappend(v_lob,30,hextoraw('00001200A00000070000000430313030A00100030000000100010000A002'));dbms_lob.writeappend(v_lob,30,hextoraw('0003000000010B100000A00300030000000108500000A005000400000001'));dbms_lob.writeappend(v_lob,30,hextoraw('00002FC0A21500050000000100002FD4A21700030000000100020000A300'));dbms_lob.writeappend(v_lob,30,hextoraw('00070000000103000000A30100070000000101000000A401000300000001'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000A40200030000000100000000A40400050000000100002FDCA406'));dbms_lob.writeappend(v_lob,30,hextoraw('00030000000100000000A40700030000000100010000A40C000300000001'));dbms_lob.writeappend(v_lob,30,hextoraw('00010000EA1C00070000080C000009BCEA1D00090000000100000DC20000'));

Page 36: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('00001CEA0000000800000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 37: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 38: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000000010000003C'));dbms_lob.writeappend(v_lob,30,hextoraw('0000001C0000000A00000006000000010000000300000001000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000300000003000000010000003F0000000A4B444B30313032495A363530'));dbms_lob.writeappend(v_lob,30,hextoraw('2020202003010001100B5008DB07071200281A1500000000010018011A06'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000139811000009C230000C00F0000811000000201000105000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0002000000000000000000000000000060F2010000000100A0AB01001001'));dbms_lob.writeappend(v_lob,30,hextoraw('000059006400000000016400000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000068'));dbms_lob.writeappend(v_lob,30,hextoraw('8500000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFF4FFFFFFFFFFFFFFFFFFC797A6C6FFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFAFFFFFF9879798DF2F4F2ECD3D4CBB575383E708FA0B3BCA799806E'));dbms_lob.writeappend(v_lob,30,hextoraw('6661656B6D6F788C7E6961626363656565656669FFFFFFFFFFFFFFFFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFF8EDEBEFFFFFFFFFFFFFFFFFE1A5A5D2FAFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFF3E1D5CACCD8DCDDE4F3F0DCD0CFD0D1D2D3D4D3D4D600010000'));dbms_lob.writeappend(v_lob,30,hextoraw('00054B434B464C3631343030313036000000DC000000000001010000E20A'));

Page 39: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000C0200000001000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('60F2010000000100A0AB0100EFCB01000000010034A00100000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000018565300B85553000000000060F2010000000100A0AB0100'));dbms_lob.writeappend(v_lob,30,hextoraw('CD230100000001009401010000006800B40901001C87F6FF00609A00AB42'));dbms_lob.writeappend(v_lob,30,hextoraw('0400AB2A080066660900000000000000000000206500D14506005D140A00'));dbms_lob.writeappend(v_lob,30,hextoraw('00006100002005000000030000010000B337000000000000002700005A1C'));dbms_lob.writeappend(v_lob,30,hextoraw('0000B07200000000010000000000000001000000010080367C007C130500'));dbms_lob.writeappend(v_lob,30,hextoraw('328407000CD704008500000000000000BB0C000006000000020000001100'));dbms_lob.writeappend(v_lob,30,hextoraw('0000C0000000010000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000600000000000003000000160800000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000001528080000000000000000487F7F6C'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000452C1E1C78807F7C4148586D8080808080808080808080808080'));dbms_lob.writeappend(v_lob,30,hextoraw('808080808080808080808080808080808080808080800000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000040F000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000014080917000000001C0F000023071111010100020203010112130F05'));dbms_lob.writeappend(v_lob,30,hextoraw('060301010202030403030403050202040201070505020405030203050000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000021002C00'));dbms_lob.writeappend(v_lob,30,hextoraw('11000000000000000000000000000000000060006D007C008A0000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000A20074004500440061004F00510068007E008200B100C400AC00'));dbms_lob.writeappend(v_lob,30,hextoraw('AC00A4008E005200210024004B0069007A008C009500800072005A004800'));dbms_lob.writeappend(v_lob,30,hextoraw('41003C00400045004700490051006500580044003D003D003D003E003F00'));dbms_lob.writeappend(v_lob,30,hextoraw('3F0040004000410044000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0200000000000100000000000000000006000400020002000000FFFF0000'));dbms_lob.writeappend(v_lob,30,hextoraw('010006000600080009000900080009000800040000000000050007000800'));dbms_lob.writeappend(v_lob,30,hextoraw('080009000900080007000600060005000500060006000600070008000800'));

Page 40: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('060005000500050005000500050005000600060006000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000F9FFF7FFFDFF00000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000E6FFE1FFE0FFE2FF00000000000000000E00'));dbms_lob.writeappend(v_lob,30,hextoraw('0A0006000500E7FFE3FFE2FFEAFF0C000C00110014001300120011000F00'));dbms_lob.writeappend(v_lob,30,hextoraw('0500F9FFF9FF06000B000D000F00110010000E0009000700050004000500'));dbms_lob.writeappend(v_lob,30,hextoraw('06000700070008000A000D00080007000600060006000700060006000600'));dbms_lob.writeappend(v_lob,30,hextoraw('06000700B3070000000D000000000000EF0F090081FD81FDED00000061FE'));dbms_lob.writeappend(v_lob,30,hextoraw('CB000000B6C781BDD08AC2DC94C9EBA2D3FFBBF8FFF2FFFFFFFFFFFFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFBBC782C0CE88C6D690CAE39BD2FDB2F6FFEFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBDC982C3CF89C8D48ECCD992CEDE'));dbms_lob.writeappend(v_lob,30,hextoraw('97CBEA9EBBE3A6D6F7D8FFFFFFFFFFFFFFFFFFFFFFFFBFC884C4CE89B8C8'));dbms_lob.writeappend(v_lob,30,hextoraw('80AFC379A5B9705F692262621C707B2EC4E0B3FFFFFFFFFFFFFFFFFFBBC7'));dbms_lob.writeappend(v_lob,30,hextoraw('80BCC78199A96299A96387904E5B5614585B1658621A8BAA5CDEFFD0FFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFABBA72A3B46B90A35A7790455E7D323A4712343E0F4C5D1E728F'));dbms_lob.writeappend(v_lob,30,hextoraw('4794BD71CDF0B4CEFABA93A35C8E9D558A9E555472274D6E234D6D224B6D'));dbms_lob.writeappend(v_lob,30,hextoraw('214B6F25507A2C698E449EBE75BEDC9483924C85964E587A2E46681F456A'));dbms_lob.writeappend(v_lob,30,hextoraw('1F436A1E42691E426820426B2147742A688D448BAF64FFFFFFFFFFFFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('FFFFFFFFFFFFFFFFFFFFFFFFFFFFF8EDEBEFFFFFFFFFFFFFFFFFE1A5A5D2'));dbms_lob.writeappend(v_lob,30,hextoraw('FAFFFFFFFFFFF3E1D5CACCD8DCDDE4F3F0DCD0CFD0D1D2D3D4D3D4D6FEF5'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000640081100100000001030000F4000000F0000000F80000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000910300007F3600000000000000000000640081100100000001030000'));dbms_lob.writeappend(v_lob,30,hextoraw('093D0000C30000002601000000062E06850000009C230000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000001009300670293009B040000D0070000D8050000B00026012C01CD00'));dbms_lob.writeappend(v_lob,30,hextoraw('320000000000000001016400000000003700000008017200020200000500'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 41: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000002E0D070DF70C010DD90C0000741B'));dbms_lob.writeappend(v_lob,30,hextoraw('331DBD226422BC1D00000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000008D00120000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000007E000F00000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000300000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000004504D104D804F0049F040000C1049104F6046604A3040000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000B604A804CF048D04DA040000640545057C055C05'));dbms_lob.writeappend(v_lob,30,hextoraw('7A0500000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000002D07E7064207E60645070000F9075A07'));dbms_lob.writeappend(v_lob,30,hextoraw('11088C071D08000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000008307C707C906E007D8070000'));dbms_lob.writeappend(v_lob,30,hextoraw('AF0790071408180888070000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000009082B07E8074B07'));dbms_lob.writeappend(v_lob,30,hextoraw('1B070000DE07B1076B087708DA0700000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000000000000E7071407'));dbms_lob.writeappend(v_lob,30,hextoraw('86078A07CD0700008607B60725093D091B08000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('EA0537060D060506A90600000F0705073109FB0944070000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000017053C0516052205D60400002F059A050F05FB043F0500000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 42: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000EC06C2062307F205EA0600005F06D806EB07D309D607'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000B507F307F00648072507000081079207F708'));dbms_lob.writeappend(v_lob,30,hextoraw('2B091A080000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000002080907E0061C07660700004107'));dbms_lob.writeappend(v_lob,30,hextoraw('8E07A00815088D0700000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000120876073C07D107AF07'));dbms_lob.writeappend(v_lob,30,hextoraw('00009C072E07E207D707C607000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000B807B207EB07'));dbms_lob.writeappend(v_lob,30,hextoraw('630890070000BA071608C40935097F070000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000002C07'));dbms_lob.writeappend(v_lob,30,hextoraw('1A07A90754075B0700007D077107CC097608090800000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00008D058A0549056305580500006205C8056705D6053B05000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000300685060C06E40652060000900687069F06E806B0060000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000003107490721073607BE060000760728074F08EB06'));dbms_lob.writeappend(v_lob,30,hextoraw('950700000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000082074B0844075C07FA07000075079807'));dbms_lob.writeappend(v_lob,30,hextoraw('14081307D106000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000008D07CE076307ED07C1070000'));dbms_lob.writeappend(v_lob,30,hextoraw('690857080C08F4078F070000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000001608BA07E0079B07'));dbms_lob.writeappend(v_lob,30,hextoraw('020800001B084D0906094408EC0700000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000000007B076207'));dbms_lob.writeappend(v_lob,30,hextoraw('3C07C2074E0700006307EF079A08F3077008000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 43: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000C004BD04C804A604AE040000F2049A043605DA04C40400000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000EA04AE04C2040805D904000084058305F4064B071307'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000005007C10696071D0727080000D5074107FE07'));dbms_lob.writeappend(v_lob,30,hextoraw('A108FF080000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000A807B6079307DF07B9070000B907'));dbms_lob.writeappend(v_lob,30,hextoraw('DC07AE088B08680800000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000C808ED070708AB071207'));dbms_lob.writeappend(v_lob,30,hextoraw('00001408CF07050984099208000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000000004908EE07D407'));dbms_lob.writeappend(v_lob,30,hextoraw('7907A7070000880733085E0BC30BF3080000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000002006'));dbms_lob.writeappend(v_lob,30,hextoraw('9D068006F405E406000061077107D40C0F0EDF0900000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00005205E2043C05F804310500007C0594051A0530056D05000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000C07AF063D077B06290700009E061008E50B980EF00A0000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000009A07A6077F07B8071F070000FF07CE07F30A230B'));dbms_lob.writeappend(v_lob,30,hextoraw('600900000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000E8078C07700778078D070000A3070708'));dbms_lob.writeappend(v_lob,30,hextoraw('FD089E08F107000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000CD072407D907E707EB070000'));dbms_lob.writeappend(v_lob,30,hextoraw('70072F080D09580820080000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000000004081C08FB079108'));

Page 44: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('7B080000E4074C09B80C4E0B1E0800000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000000004907E707'));dbms_lob.writeappend(v_lob,30,hextoraw('8907C20708080000E50792083A0C6F0ADF07000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('6E0598056905AE05BA0500004A051B068D0509069B050000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000FB05C006EC06EA0665060000CB0655077807DD08F20600000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000EC069707E6071707590700003C074F08EA085D073F07'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000C80784075407F90738070000AF071208E808'));dbms_lob.writeappend(v_lob,30,hextoraw('A4078A070000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000F907A5077E07F1072D080000D007'));dbms_lob.writeappend(v_lob,30,hextoraw('4C089408C4076F0800000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('0000000000000000000000000000000000000000AC07F707E3078B07D207'));dbms_lob.writeappend(v_lob,30,hextoraw('0000A709AA0AD60A50081E08000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000000000000000000000000025085E079307'));dbms_lob.writeappend(v_lob,30,hextoraw('B207D4070000E907BF087B0AC50824080000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 45: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000018012000DF0001000000000000008D00790000000505'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 46: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000001000500050000000000000003000100000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));

Page 47: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000000000000000000000000000000000000000000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000000000000000000000007A140100D8090100000001005FBA0100'));dbms_lob.writeappend(v_lob,30,hextoraw('7F56FFFF21EFFFFF41C5FFFFF0CE0100CF6BFFFFDB1200007454FFFFB198'));dbms_lob.writeappend(v_lob,30,hextoraw('010000000000000000000000000000010002000700000004303130300000'));dbms_lob.writeappend(v_lob,30,hextoraw('000000000000005000000001000000000000006400000007010300030000'));dbms_lob.writeappend(v_lob,30,hextoraw('000100060000011200030000000100010000011A00050000000100003040'));dbms_lob.writeappend(v_lob,30,hextoraw('011B00050000000100003048012800030000000100020000020100040000'));dbms_lob.writeappend(v_lob,30,hextoraw('0001000030500202000400000001000009B2000000000000004800000001'));dbms_lob.writeappend(v_lob,30,hextoraw('0000004800000001FFD8FFDB004300080606070605080707070909080A0C'));dbms_lob.writeappend(v_lob,30,hextoraw('140D0C0B0B0C1912130F141D1A1F1E1D1A1C1C20242E2720222C231C1C28'));dbms_lob.writeappend(v_lob,30,hextoraw('37292C30313434341F27393D38323C2E333432FFDB0043010909090C0B0C'));dbms_lob.writeappend(v_lob,30,hextoraw('180D0D1832211C2132323232323232323232323232323232323232323232'));dbms_lob.writeappend(v_lob,30,hextoraw('32323232323232323232323232323232323232323232323232323232FFC0'));dbms_lob.writeappend(v_lob,30,hextoraw('001108004B006003012100021101031101FFC4001F000001050101010101'));dbms_lob.writeappend(v_lob,30,hextoraw('0100000000000000000102030405060708090A0BFFC400B5100002010303'));

Page 48: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('020403050504040000017D01020300041105122131410613516107227114'));dbms_lob.writeappend(v_lob,30,hextoraw('328191A1082342B1C11552D1F02433627282090A161718191A2526272829'));dbms_lob.writeappend(v_lob,30,hextoraw('2A3435363738393A434445464748494A535455565758595A636465666768'));dbms_lob.writeappend(v_lob,30,hextoraw('696A737475767778797A838485868788898A92939495969798999AA2A3A4'));dbms_lob.writeappend(v_lob,30,hextoraw('A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7'));dbms_lob.writeappend(v_lob,30,hextoraw('D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F010003'));dbms_lob.writeappend(v_lob,30,hextoraw('0101010101010101010000000000000102030405060708090A0BFFC400B5'));dbms_lob.writeappend(v_lob,30,hextoraw('110002010204040304070504040001027700010203110405213106124151'));dbms_lob.writeappend(v_lob,30,hextoraw('0761711322328108144291A1B1C109233352F0156272D10A162434E125F1'));dbms_lob.writeappend(v_lob,30,hextoraw('1718191A262728292A35363738393A434445464748494A53545556575859'));dbms_lob.writeappend(v_lob,30,hextoraw('5A636465666768696A737475767778797A82838485868788898A92939495'));dbms_lob.writeappend(v_lob,30,hextoraw('969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8'));dbms_lob.writeappend(v_lob,30,hextoraw('C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFF'));dbms_lob.writeappend(v_lob,30,hextoraw('DA000C03010002110311003F00F7FA2800A28033EF35AB2B2668DE656940'));dbms_lob.writeappend(v_lob,30,hextoraw('27629C9E3F41F8D61DDF8AA63107B6B723731501F3D476C0E7D3BF7AE7A9'));dbms_lob.writeappend(v_lob,30,hextoraw('5ADA44EBA38572F7A5A228B6AFAA4D133E250C4F0A81B03F5CFAFE551CFA'));dbms_lob.writeappend(v_lob,30,hextoraw('E5DC3705236B9099F959C9CB0F5E71FCAB1E791D8A853DAC5F8FC47728A5'));dbms_lob.writeappend(v_lob,30,hextoraw('E3904D1463F78651F9E08C67F2AD9B0D7ED6F1963901825270037427D8F4'));dbms_lob.writeappend(v_lob,30,hextoraw('ADA1575D4E5AB86B2BC4D6A2BA0E20A28020BBBC82CA069A791511464926'));dbms_lob.writeappend(v_lob,30,hextoraw('B85D5FC55717D1C91DB3BDBC247CA57EF483EA3A0EA30391DF3D2B9EB54B'));dbms_lob.writeappend(v_lob,30,hextoraw('7BA8ECC2D1E77CD2D918B0C924CF08794AF95F2ABE4EEC7B1FA7A7F8D68D'));dbms_lob.writeappend(v_lob,30,hextoraw('B8891136A0E7F889C9FAFD2B92E7A6F42705B8DAEC081CF352EF72A55D89'));dbms_lob.writeappend(v_lob,30,hextoraw('53C005B8271C0C517443466B8646DDB7E5279C038CFF009C55F824136E0C'));dbms_lob.writeappend(v_lob,30,hextoraw('8BB98E361E140F5CFAFEBF4E29A959D824AE8E8349D4DE0912CEE5CBC6FC'));dbms_lob.writeappend(v_lob,30,hextoraw('45237553FDD27F974FE78E86BBA9CAE8F26BC3965A750A86EAE63B4B6927'));dbms_lob.writeappend(v_lob,30,hextoraw('93EEA0CE0753ED56DD95CCA29B7647966BDAE4BAB5C331761006F9533FAE'));dbms_lob.writeappend(v_lob,30,hextoraw('2B3E362DD8818E17D4579D295DDCF769C1422A28596E1124B743B864B391'));dbms_lob.writeappend(v_lob,30,hextoraw('9C1C0C0CFEB5AD6F7A820DEA32490080718CF734031C9A81915C02892630'));

Page 49: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('70738FAD3C4985DD2EE91B079E31DBFF00AFFA7E13A5ECC56B6C292CCC4B'));dbms_lob.writeappend(v_lob,30,hextoraw('82727B7BF4FC2B6AC6C629103FDEC0CF03A516BB2272E58DD1A575630DC5'));dbms_lob.writeappend(v_lob,30,hextoraw('8BEC0526C0C371F2B7627F1E31E848AD1D1EF3EDDA6C52B7DF1F2B7D4576'));dbms_lob.writeappend(v_lob,30,hextoraw('517AD8F3AA5E50BBE8CBF5C3F8EF555402C43E30BCA81D58FAFB007F1DC3'));dbms_lob.writeappend(v_lob,30,hextoraw('D2AEB3B405858F3554702D322C8CA0BB28EAE3A9F5C7A54B1E6465CF51C7'));dbms_lob.writeappend(v_lob,30,hextoraw('1CE7EBEB5E79ED17E7B269203388D9BCA6CB123A29EB8F7E074A9AD884DA'));dbms_lob.writeappend(v_lob,30,hextoraw('7FE5A10547246E18E8DF8FF9EB57B19EE3D61324477463CC3D15BB7FF5EA'));dbms_lob.writeappend(v_lob,30,hextoraw('F5B58B2C8CB3CA418F219319E073DBD49A51D5EA293B2D09D9ED2594ED89'));dbms_lob.writeappend(v_lob,30,hextoraw('B29C601F957E807A93FF00D7A7BEA8414318C48A32481CB7E149BBB2795B'));dbms_lob.writeappend(v_lob,30,hextoraw('DC946B33F958F314311C85CE4D6AF8426DE2FA3EC24DE07619247F4ADE83'));dbms_lob.writeappend(v_lob,30,hextoraw('F791CF88828D3763A7AF23F115CA5D6B77C66DD812C8831DB6BEDFE4BFCA'));dbms_lob.writeappend(v_lob,30,hextoraw('B5C46C8C702BDE6CAD696915F49E4DBDB3999D485CE7E56C8E7DFBFE75B5'));dbms_lob.writeappend(v_lob,30,hextoraw('776569A6C8634F2BCD0A4614EE0ADB8E0F4FEE81D79E7DAB9743D0727751'));dbms_lob.writeappend(v_lob,30,hextoraw('284F7AD3BB289F0848DDF30C0183C7D2A88BA45930CC14A9F948E327FA54'));dbms_lob.writeappend(v_lob,30,hextoraw('6ECBD958B8978D23088156C750DC151EBFD78A626A11F98D2461CE09C6E6'));dbms_lob.writeappend(v_lob,30,hextoraw('C0CFAFF2EF5765BB22CF64352FC85755908DC30C40EDE9EDF8535EEFE7CA'));dbms_lob.writeappend(v_lob,30,hextoraw('92EDFDEEB525D8920B832B3166CB31C6075AECBC0A3CCB7BFB903E479FCB'));dbms_lob.writeappend(v_lob,30,hextoraw('5F7DBD7F5623F0ADE87C47262DDA9B3ADAF22D42C649F5FD5215C7991DDC'));dbms_lob.writeappend(v_lob,30,hextoraw('8719C70C778FD1856989F85330C0BF799AB0F91A0D9C92970D70C309B739'));dbms_lob.writeappend(v_lob,30,hextoraw('EDEB5CDDC5D1B8DCD9C31E093FCEB8D773D18EED9599811B0700FDDCF19C'));dbms_lob.writeappend(v_lob,30,hextoraw('74A81DDA53E4AA7FABCE463922A96837A8EB2D40850A371740470719FA63'));dbms_lob.writeappend(v_lob,30,hextoraw('9351DC5C484ACB90C87F8D40E467BFBF6A609752FA4F68D1DA28683CC903'));dbms_lob.writeappend(v_lob,30,hextoraw('093CC919515B9DA5883903E800E9EF86C7776859930AAACB90D248C31863'));dbms_lob.writeappend(v_lob,30,hextoraw('9CE3F8B1C01D3BE29DBB1241F6E31420A2EF958F9712F42CE781FA9AF5EF'));dbms_lob.writeappend(v_lob,30,hextoraw('0B59AE99E1CB3B61CED4C93FDE24925BF1249FC6B7C3AD4E3C6BF712358C'));dbms_lob.writeappend(v_lob,30,hextoraw('98AF28F880D2685E2CB7D5578B5BF8C47231E8244E067D3823F33E86B5AF'));dbms_lob.writeappend(v_lob,30,hextoraw('0E681CD849F2D5473BA8EA8F72013267390A09FE23FF00EBAA0F74002B1B'));dbms_lob.writeappend(v_lob,30,hextoraw('6E217927D735C518D91EB3642B78ADFBB62DB58608E9FE7EB50BDD345228'));

Page 50: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('9F12089C286C7250FF00FAFF004AA15FA8933B41383B880CB90CBEA3FC8A'));dbms_lob.writeappend(v_lob,30,hextoraw('B4976509750A55802EA46383DC7B67FF00AF49AB949D88E475624C5856EB'));dbms_lob.writeappend(v_lob,30,hextoraw('B33918F51EDEDD45316651B8B3E028CB31E8B42417373C2168359D612665'));dbms_lob.writeappend(v_lob,30,hextoraw('65B4B51F331EC0F6FF0079BA7B0C9AF5F4D414E31803A003A0AEEC3C2D1B'));dbms_lob.writeappend(v_lob,30,hextoraw('B3CAC6CEF3515D07C978077AE73C516D6BAF68D3E9F72400C331B919D8E3'));dbms_lob.writeappend(v_lob,30,hextoraw('A37F423B826B671BAB1C91934D34786DC5C5D6837B2596A11E5233F788DD'));dbms_lob.writeappend(v_lob,30,hextoraw('81DB3EABE8C3E879AB29790CB133ADC28600951B772BF049C30EFD0631F5'));dbms_lob.writeappend(v_lob,30,hextoraw('22B8670B33D7A7514D157ED68C71B80E391D0FE5514F75E63200549C05DC'));dbms_lob.writeappend(v_lob,30,hextoraw('09248078C8FD3F0A496A3E6D090DCB328576002F2327A8FAD491DE1936A2'));dbms_lob.writeappend(v_lob,30,hextoraw('4818AF418CE47A0EB49C74294B51EFAB5A58B1DC5629003948BE66048EC3'));dbms_lob.writeappend(v_lob,30,hextoraw('A27E27F0A82C3ED3AFCEA142DAD921F9980257F0CFDE6ABA74DB7764D5AC'));dbms_lob.writeappend(v_lob,30,hextoraw('A0AC8F4BD2AE2DEC2CE3B5B55D90A7BF2C7BB31EE4D6CC5A9FFB5FAD77AD'));dbms_lob.writeappend(v_lob,30,hextoraw('158F22576EECB13EA679F98D64DDEA5907E6A0491C8EBC2DB528BCBB88F2'));dbms_lob.writeappend(v_lob,30,hextoraw('57EE3A9C32FD0FF4E95E7B79A55D59485ED252CBD7E4E0FE2A78FCAB29C5'));dbms_lob.writeappend(v_lob,30,hextoraw('3D4DE12712A1D52E631B278A3723BB02A69575A0060DA8C74E2520563C8B'));dbms_lob.writeappend(v_lob,30,hextoraw('A1D0AB77429D6198623B3841EDB896FE58A5DDAA5E64333221EA000831F8'));dbms_lob.writeappend(v_lob,30,hextoraw('75A1410A559BF22E59E8E818198F987FBA385FFEBD75366ACA147000E000'));dbms_lob.writeappend(v_lob,30,hextoraw('30056D1563094AE6D5BCC500E6AFC7764739AB322ECEED9EB59972EC73CD'));dbms_lob.writeappend(v_lob,30,hextoraw('0C119173CF5AC7B951CF152CD119D2F71DAAB144CFDC5FFBE452B00E04A9'));dbms_lob.writeappend(v_lob,30,hextoraw('C2F1F415247C9E6901A56E06056941DAAD125E8F8E956149C1E6988FFFD9'));dbms_lob.writeappend(v_lob,30,hextoraw('FFE200754650585200000100020000019C002F0005004500780074006500'));dbms_lob.writeappend(v_lob,30,hextoraw('6E00730069006F006E0020004C006900730074000000000076A8002F0005'));dbms_lob.writeappend(v_lob,30,hextoraw('00530063007200650065006E0020004E00610069006C005F006200640030'));dbms_lob.writeappend(v_lob,30,hextoraw('0031003000300036003000390037003100390061003100380030000000FF'));dbms_lob.writeappend(v_lob,30,hextoraw('E201AB46505852000002000000000000FEFF0000000402001060615654C1'));dbms_lob.writeappend(v_lob,30,hextoraw('CE11855300AA00A1F95B010000001060615654C1CE11855300AA00A1F95B'));dbms_lob.writeappend(v_lob,30,hextoraw('300000006C0100000A000000010000005800000000000010600000000100'));dbms_lob.writeappend(v_lob,30,hextoraw('01006C000000020001008C00000003000100A000000004000100A8000000'));

Page 51: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('05000100B400000006000100C000000007000100D8000000001001002001'));dbms_lob.writeappend(v_lob,30,hextoraw('000002000000B00400001210000001000000010000001F0000000C000000'));dbms_lob.writeappend(v_lob,30,hextoraw('530063007200650065006E0020006E00610069006C000000480000003002'));dbms_lob.writeappend(v_lob,30,hextoraw('0010C06FD011BD0100609719A18012000000010000004000000000A7CD50'));dbms_lob.writeappend(v_lob,30,hextoraw('1BF6C2014000000000A7CD501BF6C2011F00000007000000500069006300'));dbms_lob.writeappend(v_lob,30,hextoraw('6F0073007300000000001F0000001F000000500072006500730069007A00'));dbms_lob.writeappend(v_lob,30,hextoraw('65006400200069006D00610067006500200066006F00720020004C004300'));dbms_lob.writeappend(v_lob,30,hextoraw('4400200064006900730070006C0061007900000000001F10000001000000'));dbms_lob.writeappend(v_lob,30,hextoraw('1F0000002F000500530063007200650065006E0020004E00610069006C00'));dbms_lob.writeappend(v_lob,30,hextoraw('5F0062006400300031003000300036003000390037003100390061003100'));dbms_lob.writeappend(v_lob,30,hextoraw('3800300000000000FFE276B74650585200000200010000F2F5FEFF000000'));dbms_lob.writeappend(v_lob,30,hextoraw('04020031020010C06FD011BD0100609719A1800100000031020010C06FD0'));dbms_lob.writeappend(v_lob,30,hextoraw('11BD0100609719A180300000007876000007000000010000004000000002'));dbms_lob.writeappend(v_lob,30,hextoraw('000000480000000300000050000000040000005800000005000000600000'));dbms_lob.writeappend(v_lob,30,hextoraw('000600000068000000070000007000000002000000B00400001300000080'));dbms_lob.writeappend(v_lob,30,hextoraw('02000013000000E0010000040000000000803F1200000003000000130000'));dbms_lob.writeappend(v_lob,30,hextoraw('00000000004100000000760000FFD8FFDB00840005050505050505050505'));dbms_lob.writeappend(v_lob,30,hextoraw('050505050506050606050607060607060607080707080807070809080909'));dbms_lob.writeappend(v_lob,30,hextoraw('0908090A0A0B0B0A0A0B0C0D0C0B0E0F0F0E101110141417010505050505'));dbms_lob.writeappend(v_lob,30,hextoraw('050505050505050505050606060606060706060706060709080708080708'));dbms_lob.writeappend(v_lob,30,hextoraw('090909090A0909090A0A0B0B0A0A0C0D0D0D0C0E0F0F0E111211141418FF'));dbms_lob.writeappend(v_lob,30,hextoraw('C000110801E0028003012200021101031101FFC401A20000010501010101'));dbms_lob.writeappend(v_lob,30,hextoraw('010100000000000000000102030405060708090A0B010003010101010101'));dbms_lob.writeappend(v_lob,30,hextoraw('0101010000000000000102030405060708090A0B10000201030302040305'));dbms_lob.writeappend(v_lob,30,hextoraw('0504040000017D01020300041105122131410613516107227114328191A1'));dbms_lob.writeappend(v_lob,30,hextoraw('082342B1C11552D1F02433627282090A161718191A25262728292A343536'));dbms_lob.writeappend(v_lob,30,hextoraw('3738393A434445464748494A535455565758595A636465666768696A7374'));dbms_lob.writeappend(v_lob,30,hextoraw('75767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8'));

Page 52: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1'));dbms_lob.writeappend(v_lob,30,hextoraw('E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FA1100020102040403040705'));dbms_lob.writeappend(v_lob,30,hextoraw('040400010277000102031104052131061241510761711322328108144291'));dbms_lob.writeappend(v_lob,30,hextoraw('A1B1C109233352F0156272D10A162434E125F11718191A262728292A3536'));dbms_lob.writeappend(v_lob,30,hextoraw('3738393A434445464748494A535455565758595A636465666768696A7374'));dbms_lob.writeappend(v_lob,30,hextoraw('75767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7'));dbms_lob.writeappend(v_lob,30,hextoraw('A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DA'));dbms_lob.writeappend(v_lob,30,hextoraw('E2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C0301000211031100'));dbms_lob.writeappend(v_lob,30,hextoraw('3F00FB2E8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));

Page 53: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));

Page 54: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002'));dbms_lob.writeappend(v_lob,30,hextoraw('8A28A0028A28A0028A28A0028A28A0028A28A0028A4240E49007BD567BEB'));dbms_lob.writeappend(v_lob,30,hextoraw('38FEFDD5BA9F4322E7F2CE6A255210F8A708FAC92FCCA5194BE18CA5E89B'));dbms_lob.writeappend(v_lob,30,hextoraw('FC8B54566BEB1A647F7AEE31F40C7F929A8BFB7B493FF2F89FF7C49FFC45'));dbms_lob.writeappend(v_lob,30,hextoraw('4FB7A3FF003FA97FE071FF0032FD8577B51AAFFEDC97F91AF45662EB1A63'));dbms_lob.writeappend(v_lob,30,hextoraw('E3179173FDEDCA3F3602ADA5DDAC98D9730393D964527F2CE68F6F46F6F6'));dbms_lob.writeappend(v_lob,30,hextoraw('D4AFDB9E3FE6274AAC7E2A7523EB16BF3458A28041E473F4A2B5DF546614'));dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514500145145001451450014514500145145'));dbms_lob.writeappend(v_lob,30,hextoraw('001451450014514500145145001451450014514500145145001451450014'));dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514500145145001451450014514500145145'));dbms_lob.writeappend(v_lob,30,hextoraw('001451450014514500145145001451450014514500145145001451450014'));dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514848009240006493D00A1B495DE8900B47'));dbms_lob.writeappend(v_lob,30,hextoraw('EB5837DE20B5B44B86B782E751FB344F2CAD64AAF0C5B14B112CC5822E07'));dbms_lob.writeappend(v_lob,30,hextoraw('2D8DC40E715C4A78BEE2EEF02DD9686DFCB91A3B5B19BCA9657006D5F389'));dbms_lob.writeappend(v_lob,30,hextoraw('0C580E700AE7D0D71D4C6D285B953A89FDA5F02D6D7E6D6FFF006EA67750'));dbms_lob.writeappend(v_lob,30,hextoraw('CBF11593972F2462AFEF7C4F4BD9477D7CEC8F4AB9BDB5B45DD737105BF1'));dbms_lob.writeappend(v_lob,30,hextoraw('BB1230C91EA17209FC335CEDF788ADE05CAC17F3864DE0B036916C61F2B8'));dbms_lob.writeappend(v_lob,30,hextoraw('6203ED6EC70457995FBBCC7CF983C32CD34ABE54B2BBC862508C8CDE665B'));dbms_lob.writeappend(v_lob,30,hextoraw('3F315CF42471575668EE34C8A693509E7D463B7FB2B5BB798C91C238FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('5921DA338042AE6B8AA62AB49AE694609FD94AF67DA5CCA49E9D5289E9D3'));dbms_lob.writeappend(v_lob,30,hextoraw('CB28D35194DCEAB6ECEC9A4BD39754AFD798D793C5EE0FEEB4BB45DFCEE9'));dbms_lob.writeappend(v_lob,30,hextoraw('E56B923AF7C27359EDAE5F5E4EA6396DEDE4D8CE9E55B43862A46F53952C'));dbms_lob.writeappend(v_lob,30,hextoraw('49524F53D0D624563773E4AEE5551951B9138CF070707F1AD4834B96D8EF'));dbms_lob.writeappend(v_lob,30,hextoraw('9248D582151B02CC46E52A4E7A038279CF1EB595E5FCF2B7F2B9C9C7FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('016EC77AA3429FC308F35BAFBCFEF7765B7BF9A389A5FED131AB0310489C'));dbms_lob.writeappend(v_lob,30,hextoraw('00D32336EC85E3008F4EAD8E0559B19E2FECE7BEBDBCB95093F92AB09824'));dbms_lob.writeappend(v_lob,30,hextoraw('7C6DF918C6EE199430C11819CF5E2B37FB1C491AAC7708C18EF1959B284F'));

Page 55: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('DE2EAAAC39E32453CE937DE4FD8CDC59B428DE6008C19B78C8237F95E600'));dbms_lob.writeappend(v_lob,30,hextoraw('739DA5B1DE87CCADCB2827AEBEEFE52BA6D04941AB27CBAABE9D16E969F9'));dbms_lob.writeappend(v_lob,30,hextoraw('8D9356667550B6ECB963BE4861DA0BE0B050F1E40CF1D69D6F2C6CFE5B44'));dbms_lob.writeappend(v_lob,30,hextoraw('CDF2641B6B99A12A146ECEC3E647B40CE47967EA2B12EF48B9B695FCC0CA'));dbms_lob.writeappend(v_lob,30,hextoraw('72AC09DC232ACA4E54E3279C6738A4B78DADB3712B31050C6AA8CC595FF8'));dbms_lob.writeappend(v_lob,30,hextoraw('4B0C6D55E304E49C1E01AA729A69CB54BBB6EFF7DD3EFAA65AA74DC7DCB5'));dbms_lob.writeappend(v_lob,30,hextoraw('9FF2E8DBF5563BA5125A44938BAD42CE2961CA1921250B28DE9896368CB6'));dbms_lob.writeappend(v_lob,30,hextoraw('E1DF67E04516BE29D46DC9FB447F6BB741932C5FBF3803272B12ADC2E307'));dbms_lob.writeappend(v_lob,30,hextoraw('2CF0941DDAB8F8EEAEEF664B5925976B3EE0AF2FCBD0B0281C85002E7180'));dbms_lob.writeappend(v_lob,30,hextoraw('339AD5BC96C96C87D9DE1F3EDE416F0082D5A079E35059AE1A52DB89EDC8'));dbms_lob.writeappend(v_lob,30,hextoraw('07A50A779276709FF343DD7A79C546C9DBB3EC734B0D07EED58AABCCFAC6'));dbms_lob.writeappend(v_lob,30,hextoraw('FCA9ECEFBFE27A1D8788ECAF07CFFE8E720062C2588E7D254E3F302BA004'));dbms_lob.writeappend(v_lob,30,hextoraw('3004104119047208F506BC2C89268D6E25DF1486525A681FCAB97E01F9C9'));dbms_lob.writeappend(v_lob,30,hextoraw('1E5CD9084013C720193B715BD67AA6A3A546B7125CACD6825F2D9D7CD685'));dbms_lob.writeappend(v_lob,30,hextoraw('148043DCC1B09B70718DE85E31C65D72057552C4D64ED2FDF4757B28D4EB'));dbms_lob.writeappend(v_lob,30,hextoraw('B25A4B6DB7EE7057CB21BD297B36FECBBB85FB296EBE67ABD158FA6EB36D'));dbms_lob.writeappend(v_lob,30,hextoraw('A861388A728AFB198157073CC4D9CB818F4079AD8AEEA7561563CD095D75'));dbms_lob.writeappend(v_lob,30,hextoraw('EEBC9AE878F5294E949C2A45C64BA3FD1F50A28A2B42028A28A0028A28A0'));dbms_lob.writeappend(v_lob,30,hextoraw('028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A'));dbms_lob.writeappend(v_lob,30,hextoraw('28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0'));dbms_lob.writeappend(v_lob,30,hextoraw('028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A'));dbms_lob.writeappend(v_lob,30,hextoraw('28A0028A28A0028A28A0028A28A0028A28A0029090A0927007AD4734C902'));dbms_lob.writeappend(v_lob,30,hextoraw('179090338E39249EC05717AEF8AE2B0696C6D5D25D55B2918257ECD6EDC9'));dbms_lob.writeappend(v_lob,30,hextoraw('C3B161994283C7F7881C573D6C4428AD759744BD0DE861EAD792508B7AEF'));dbms_lob.writeappend(v_lob,30,hextoraw('D3CF5F23A3D4F59B3D261F36E98877388A04C19A53CE36A646064724F03E'));dbms_lob.writeappend(v_lob,30,hextoraw('B5E51AF78BF50D4BCDB54DDA75AE423C4A4F9ADD33BE5C29C13D80518E0E'));dbms_lob.writeappend(v_lob,30,hextoraw('6B045DCD7575723536F3A593E68E7BC2C4ABA7CC6372482BC67615E9D302'));dbms_lob.writeappend(v_lob,30,hextoraw('AB5ECF1DCC76A046CB3C6AEB24ACC242E377EEC16C976DA3E505892381D0'));

Page 56: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('57975AB4EABB5593E5BFF0F4E5F9DACE5DF5D3CAE7D16172FA3876A4E2AA'));dbms_lob.writeappend(v_lob,30,hextoraw('54FE77B2FF000A7A7CF734B4DD41FCAFB0DCDFCB6366AF2CE5A30D34371B'));dbms_lob.writeappend(v_lob,30,hextoraw('D0E11E25652588C29C92A401D39ACB768DE432200AA24DEA00FBBF3641C0'));dbms_lob.writeappend(v_lob,30,hextoraw('E87D3078AAA408D82EE0E4004E53280FA1C93CFE5EF5A16F0C677336C0A1'));dbms_lob.writeappend(v_lob,30,hextoraw('867BE38C9C745C8C9239AC15B56AD14FE57E9BF5D0F46C95DEAEEFB2DFB9'));dbms_lob.writeappend(v_lob,30,hextoraw('659EEEEE605A59EE5822C6ACE8776D006C500B1236F6AD94D29A1C7DA58F'));dbms_lob.writeappend(v_lob,30,hextoraw('9AC3222460368038DE46467F0FC6ABCB749B55226BA264081A4691C31500'));dbms_lob.writeappend(v_lob,30,hextoraw('28076B0CA81C05C9152285C28DCA1943E79396C03819C8E3A9EB9E29DD2B'));dbms_lob.writeappend(v_lob,30,hextoraw('72A56BEEFF00CBA19BBDAEF45D9161628D4B0032DB7191CE0E78C96EF8EC'));dbms_lob.writeappend(v_lob,30,hextoraw('0D3A22EAB9794AB22EDC2A9C9E98E7D0FE351C2CB345B41DAD93DF249C63'));dbms_lob.writeappend(v_lob,30,hextoraw('94CF3C8CFB66A5F302C43CC70C4905701700E3383DC739A2EBCBAFC992EF'));dbms_lob.writeappend(v_lob,30,hextoraw('AAFEBD48CCF306E240A872DFBA247CBD06EF5CF7C8A9D6660CEC772AE634'));dbms_lob.writeappend(v_lob,30,hextoraw('F9065416C8CE01049040EE734CDBB80C9DBB80C01C0C6738C81C75CF7A5F'));dbms_lob.writeappend(v_lob,30,hextoraw('2C1E154672A08C061BB9DBB893B477E06323345E36E8BBE82B1696EAE618'));dbms_lob.writeappend(v_lob,30,hextoraw('DB1289239300EE50F1EE07A159148E091CE3A9AA970916D53318119CA8F3'));dbms_lob.writeappend(v_lob,30,hextoraw('2285304B720308F118048CE47CC3D0D3844E524669DE252724233EE1B7E6'));dbms_lob.writeappend(v_lob,30,hextoraw('52A3014ED39239A75F959A280CB2CF34B87334A931712609099531854C0C'));dbms_lob.writeappend(v_lob,30,hextoraw('F773E98AA859F3252517AD96B67F2FEB627E1927CAB5766D5AFB7530A401'));dbms_lob.writeappend(v_lob,30,hextoraw('26259773FCCB82C4286520ED182C4E78EC0734F2EEE512567786366708AE'));dbms_lob.writeappend(v_lob,30,hextoraw('1C4418A9708B9C265B04FB81E94B2E426DF30E073B493CE41F9BD4617183'));dbms_lob.writeappend(v_lob,30,hextoraw('8AAB940CCB181B95480483BB0BC77073927AE2A64ECFE7FF00034365AEFF'));dbms_lob.writeappend(v_lob,30,hextoraw('00D799D0EFD3E3863B837135D5C81816AD1158C11C9667CF727A286E98C8'));dbms_lob.writeappend(v_lob,30,hextoraw('CE6AC5A963334B348D6BBD2494C6B16E8C960C56311B14C238047538FA57'));dbms_lob.writeappend(v_lob,30,hextoraw('3AAC59D3E6925DE00504B3229FBA01246073E9E95BC9747EC4F669159C8E'));dbms_lob.writeappend(v_lob,30,hextoraw('6605A560F24B1B9258EC7919B68621B3B140E4FAD38D45A26EDE692E9AA5'));dbms_lob.writeappend(v_lob,30,hextoraw('D3D2FB99CE9B4BAC9B6D36EDA27BF4B69E9A9349692DB33C9A65B8F3A2C3'));dbms_lob.writeappend(v_lob,30,hextoraw('9B3B79D446EB8561258B2AAAA395663E4E42337431B290FD8685E214BE48'));dbms_lob.writeappend(v_lob,30,hextoraw('20B83895D3F7723654C85782B223282928C1DCA79C8208078AE66D34F9C4'));

Page 57: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('66E249D2DC6D199A66652D27CDB523F2F2495206E0B9DA01040CE441770B'));dbms_lob.writeappend(v_lob,30,hextoraw('25BCD7F6F0AA5C22457D750DAE5E595640AD34C123CE2EA366264C7CF26D'));dbms_lob.writeappend(v_lob,30,hextoraw('39DCC173D90739495483B5676B3D2D513FB3257BB6DECFAB7BDF5382BD2A'));dbms_lob.writeappend(v_lob,30,hextoraw('5563ECE6D4947453EB4E5B6EF75DD743D628AE7741D5CDFC222983195146'));dbms_lob.writeappend(v_lob,30,hextoraw('26C1314ABD887C005F1D71C1EA322BA2AF429558D6829A4D774F74FB1E05'));dbms_lob.writeappend(v_lob,30,hextoraw('6A53A15254E7BC5EEB66BBA0A28A2B5320A28A2800A28A2800A28A2800A2'));dbms_lob.writeappend(v_lob,30,hextoraw('8A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A28'));dbms_lob.writeappend(v_lob,30,hextoraw('00A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A2'));dbms_lob.writeappend(v_lob,30,hextoraw('8A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A28'));dbms_lob.writeappend(v_lob,30,hextoraw('00A28A2800AAD777496703CEE0B6DC0545FBCEE78551FD7D064F6A965963'));dbms_lob.writeappend(v_lob,30,hextoraw('82292695C4714485DD9BA2AA8C927F0AF23F14788565DC88CC934A079432'));dbms_lob.writeappend(v_lob,30,hextoraw('A7C8809CA93CE5657182C0038F5E0573626BFB28F2C6DED24B4F2BDECFF0'));dbms_lob.writeappend(v_lob,30,hextoraw('D0ECC1E16589A9D5538BF79FE88B1E23F16322B5B594DFE992A959E68C92'));dbms_lob.writeappend(v_lob,30,hextoraw('B6E9FF003C623C1DE71F33707DB3D3CBFCC79B28CA5B736E25F924E7AF23'));dbms_lob.writeappend(v_lob,30,hextoraw('F5E6926937004B72DBB71DA0027273B780B823F9D46B2471801B706C0E76'));dbms_lob.writeappend(v_lob,30,hextoraw('8231B861B2581E873DABC87277936DB93EBF8DBBDAE7D4D1A30A30E5846D'));dbms_lob.writeappend(v_lob,30,hextoraw('F2DFA7FC31A26E3CE08253929118B7FDF7253EE64123A7427D29B9215580'));dbms_lob.writeappend(v_lob,30,hextoraw('DAE4607420F76C81923827191DB22AA2B34CA9F2738665DD852549E42907'));dbms_lob.writeappend(v_lob,30,hextoraw('A93D3356B8420AA988A9C307397619C61B0792071C003D6B37F7FF005B1A'));dbms_lob.writeappend(v_lob,30,hextoraw('DACC96351BD005072C0E7381D4633B7B83D49ED51DDDC08E548A142E6091'));dbms_lob.writeappend(v_lob,30,hextoraw('59D17953E6303DF07EEA9C75E78EF5623963DDB33BB0DBBE63C3B1E47DD1'));dbms_lob.writeappend(v_lob,30,hextoraw('9FC326B2E69D65BC95634CBDB8456DC5922CB64952F9CF1B793CE3DEAA3B'));dbms_lob.writeappend(v_lob,30,hextoraw('5EDB875D5DACBFAD0E8A22B7281995E32586DCEF1D3E663B781C11D735A9'));dbms_lob.writeappend(v_lob,30,hextoraw('1ED758A2BA553216DEBB0907E509EC092475C1F6C1AC349576C71C20BBE7'));dbms_lob.writeappend(v_lob,30,hextoraw('63A0C994B338DBB47078C1039E456DC4599E69E495D218446C421018E41F'));dbms_lob.writeappend(v_lob,30,hextoraw('94B16DA01C023827DB02945A5EBD35FBFF00A6672F9FF5B58BE3CA91D42C'));dbms_lob.writeappend(v_lob,30,hextoraw('4A483B43AC7B82919627380493C8E4E38E951F94327CB52DD3E461E5F0E7'));dbms_lob.writeappend(v_lob,30,hextoraw('05816CAFB633FCAB3A7D562984A8A8C9146DC451925DCF1B8925801918C1'));

Page 58: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('E0706A28750B8B8F301DC220DE6791D3040F97A927214E491CF38AB77B79'));dbms_lob.writeappend(v_lob,30,hextoraw('6DB7F4C849FF00C0B9BF1F962396268F259F7ABC659C2AED5C22ED3B383C'));dbms_lob.writeappend(v_lob,30,hextoraw('B1C13DAA159E1C0555DCCC5A300EE65F538DBC1E47527D6B3A49DD90C670'));dbms_lob.writeappend(v_lob,30,hextoraw('CCC1B74AC49E7036850187037707EB598B6D216CB9C062195B20E40230A4'));dbms_lob.writeappend(v_lob,30,hextoraw('907AFB1EC6A2DCCB7F3FEBB0D43BB7F79B4D76CF195854145600E4153B89'));dbms_lob.writeappend(v_lob,30,hextoraw('20E18863D307FF00D552DB46CAF22319258E51B99882A06C60C0E14B90C1'));dbms_lob.writeappend(v_lob,30,hextoraw('73C8DD819150A35B452D8C533A4DE63BB48D03A99204882ABFCCC0C6AC79'));dbms_lob.writeappend(v_lob,30,hextoraw('55E4F724738A75C5DA4B24C96C30D6ED20455995FF00728EAA086648D990'));dbms_lob.writeappend(v_lob,30,hextoraw('E771DA18FCB9C000D0A1B4AEAF16B477BFAAD2DD3B8397D949D9A7AF4FF3'));dbms_lob.writeappend(v_lob,30,hextoraw('DC04B1C4D98D020620063FBE91578DC376D18CB743B14E3D6A097F7A436C'));dbms_lob.writeappend(v_lob,30,hextoraw('90F180228F7966C9CB1390E3E6C67249A8030F36363961BF2CA858614609'));dbms_lob.writeappend(v_lob,30,hextoraw('F9B69E383C8C9E2AD44E88C18C71824B45B99861BD3860DC1207240A5577'));dbms_lob.writeappend(v_lob,30,hextoraw('BB56D75FE997156E9A89E53C8AA1D988042901D9885E3A2F238E9D4FD2AD'));dbms_lob.writeappend(v_lob,30,hextoraw('AC322A32A267CA6037B2E4F24E4F6C91F8E39C55AB0B72E703E45C0208FD'));dbms_lob.writeappend(v_lob,30,hextoraw('E6492000D8000C8E3A7A5741676FE5B2BAED42A9B4672C7247DD209CFA95'));dbms_lob.writeappend(v_lob,30,hextoraw('1C75F5159ABB7A2D9EB6B19D4A8A09ABEA52B589C931CB36F68A356CFCC7'));dbms_lob.writeappend(v_lob,30,hextoraw('0AC4B2EDDDD7693F3600F4ABC6C6585C5C46490ADF32FDC27E601B691DBE'));dbms_lob.writeappend(v_lob,30,hextoraw('6049E9EB8AD1863112932CD070D13AB07D8036E7CA00DC0E0118CF230303'));dbms_lob.writeappend(v_lob,30,hextoraw('15BD12C4C8BE60566750DF2FDD2A47192BC7438EBCD74D18ABA8B695FD0F'));dbms_lob.writeappend(v_lob,30,hextoraw('33118B707751E68BD1DBAE9AF43CDDA36D22FADE4B7902D85EBCD736B196'));dbms_lob.writeappend(v_lob,30,hextoraw('5896CEEF6466E215E1818651BA4455C6D01D4615067D36C6ED2F6D62B84F'));dbms_lob.writeappend(v_lob,30,hextoraw('E3452C3D1880483C0E45733AE6991EA36175671048AE964FB459CEC4058E'));dbms_lob.writeappend(v_lob,30,hextoraw('F203BA267C6E2AAC098DDB19F2DDB1D6A97856FF0032A4603AC37B1EF50F'));dbms_lob.writeappend(v_lob,30,hextoraw('9F966440D229DC8A723238393F3609E2BBA32F67569CD3BAAAFD9D5D2D69'));dbms_lob.writeappend(v_lob,30,hextoraw('A7A4BFEDEDFD79998D78AC4E1A53FF0097943557DE54ED7D7F1FBBCCEFA8'));dbms_lob.writeappend(v_lob,30,hextoraw('A28AF44F1428A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028'));dbms_lob.writeappend(v_lob,30,hextoraw('A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A'));dbms_lob.writeappend(v_lob,30,hextoraw('0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028'));

Page 59: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('A28A0028A28A0028A28A0028A28A0028A28A0028A2A9EA17B1E9D65737B3'));dbms_lob.writeappend(v_lob,30,hextoraw('7DCB689A4C0C02C7A2A8C9032CC428F734A52518B93DA29B7E8B5638C5CA'));dbms_lob.writeappend(v_lob,30,hextoraw('4A3157949A49776F44721E2DD662891ECD5C8580C52CDB0FCD24CD930DB6'));dbms_lob.writeappend(v_lob,30,hextoraw('DC1C8270EC79C003835E21753C92CF249310E1E4F30B063862EC71C1038E'));dbms_lob.writeappend(v_lob,30,hextoraw('70323803A56F6B93CED6F09BAC473DC3B5DC91E4F98259FF007837E46784'));dbms_lob.writeappend(v_lob,30,hextoraw('3EFF007B15CB2ACB2AA11B8C2982766475215464E3F88838E3BD78552A4A'));dbms_lob.writeappend(v_lob,30,hextoraw('529CE5F137F725D3E5B1F5F84C3C68528C23AA5BBFE66F77FE44F2CACCDB'));dbms_lob.writeappend(v_lob,30,hextoraw('0282570DB17191B7190092540C77C1E94C10C8CE1DFF00780F0739F2FEF6'));dbms_lob.writeappend(v_lob,30,hextoraw('3059461F0791838F7A8F72441D412F2632163DBB41DC30256E00C0E7F8BB'));dbms_lob.writeappend(v_lob,30,hextoraw('76CD279136229A51E52C8B942CC137A2F5C06E7249001CE09F5AE7BFA6DA'));dbms_lob.writeappend(v_lob,30,hextoraw('7FC03B6CAE5B5C5AB930CB223A1DE5BCBC15C1DC31B9CE1863A647E95379'));dbms_lob.writeappend(v_lob,30,hextoraw('D1BA050444F239604E5C28C96EA412724EDE73D7BE2AA4E524611DBD9C96'));dbms_lob.writeappend(v_lob,30,hextoraw('C231BB0E4B1705BAC8C0950460E00F4A75B79AAF9C1E307F749C67EF1E4F'));dbms_lob.writeappend(v_lob,30,hextoraw('CD82BD7240208A15DA4FAF9DBF4B89A5D77346287C8DAF2EE7F6C151800E'));dbms_lob.writeappend(v_lob,30,hextoraw('401F78751838233CD72CB3A4771782FADD8B26A0B1B4D1B641FB4BB3C523'));dbms_lob.writeappend(v_lob,30,hextoraw('A860CBB58A8E01C03935D398CBB26363B3A11F2ED246EC12494F97A91D0B'));dbms_lob.writeappend(v_lob,30,hextoraw('7D38AAD7A9158DFC73CAB1186F2CA50B26D9194DD4215373ECE031460464'));dbms_lob.writeappend(v_lob,30,hextoraw('28213E99DA1B3566DB5D37DF5FC0CDEEB54BD56832D51924132178D6378E'));dbms_lob.writeappend(v_lob,30,hextoraw('D9584F119159F12EE656FDE15C107705C67BD6CDADD324E2D2E1815CA3AC'));dbms_lob.writeappend(v_lob,30,hextoraw('8CAB965E63941277021182F2319561D7AD6459DB3B79070A55104C855824'));dbms_lob.writeappend(v_lob,30,hextoraw('923AE03A18CC9B9836783F2F06B61208EE60B76B694C1342CEC8FC398FA0'));dbms_lob.writeappend(v_lob,30,hextoraw('0AC8487C3EDDACADE808E79A5F13DE37D2CFCD7A09DB4DCB0F1BDB6E0F18'));dbms_lob.writeappend(v_lob,30,hextoraw('00B068E41820E47CDC062300F7E87381D2B39AE278DDD844CDB88185608C'));dbms_lob.writeappend(v_lob,30,hextoraw('32BC16041E8C074C71DAB6C284B4D9218E2BCF3583410F2153F76CAC5D82'));dbms_lob.writeappend(v_lob,30,hextoraw('2B2B7CD8DAA3A1CE0F159B84964609B76374DA32EA318277E080D8276E32'));dbms_lob.writeappend(v_lob,30,hextoraw('7393449C5692DDADAFFE411BB5A6C2FDAFECE024F6F2A4F1C98963224CC6'));dbms_lob.writeappend(v_lob,30,hextoraw('C065B7A90AC3A8E76E3BF4ABD0DC799129C7C8C18EE3DFE6C101BA673C1E'));dbms_lob.writeappend(v_lob,30,hextoraw('47D2A14863811CAA076F2CB492CCFE5924BE30A3736E9319623241E3818A'));

Page 60: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('A10A859E492357810FFA4165709F34455405DA0B024B3313924E077ACF96'));dbms_lob.writeappend(v_lob,30,hextoraw('2DBE5BDD74BDF7DB5B5EFF002D47D3A3F3FF00817375B0248D9184677070'));dbms_lob.writeappend(v_lob,30,hextoraw('892E5B00E549C2A9192700103E9C542D218E557DA8ACA18F03EEE0E30580'));dbms_lob.writeappend(v_lob,30,hextoraw('1EA0E00C1047154EDCCD24D25C5C8263918ECDDB7785C9DA1BCBC8C2F000'));dbms_lob.writeappend(v_lob,30,hextoraw('C939E0D74DA4DBDBF9927DBDAE6E6231C851ADC2C61642DB57E590100056'));dbms_lob.writeappend(v_lob,30,hextoraw('39624F38C2D5421CCDC5CA3793DDF6F9762253518F372B692D92D6FDB528'));dbms_lob.writeappend(v_lob,30,hextoraw('C91A845B887CE845C2852A9F298E5DA090776DDC8EBBB69041CE719C1A83'));dbms_lob.writeappend(v_lob,30,hextoraw('3133B149236DB2B8393B8039CEE54C2E17209C32F19E4935D1EA5610CD1D'));dbms_lob.writeappend(v_lob,30,hextoraw('B2E9F1AD9F93E6167927791E62EAB82576851B4063C0C7CDC0AAA74D3039'));dbms_lob.writeappend(v_lob,30,hextoraw('919E290181433B03BB27865C0627728E4E4F20E78CD5558A4D2E7552C95E'));dbms_lob.writeappend(v_lob,30,hextoraw('4B4BBEBBA4FA934EA45ABFBD16DBB45DAFBF95D6DB6A4F691CD16C932046'));dbms_lob.writeappend(v_lob,30,hextoraw('4970590ED73C02BB98F6E067AE4FBD7456D342CD89581319F2CE01552548'));dbms_lob.writeappend(v_lob,30,hextoraw('2000080C4103D6B234D6B640F6D2E5D5594C24BEE2B1B6E0C19C1237039C'));dbms_lob.writeappend(v_lob,30,hextoraw('1C83D88A4BEB9F218792CEDBC998C6189512310738C8CE4718C8F63C7392'));dbms_lob.writeappend(v_lob,30,hextoraw('BAD53D7AAFE919545ED24E0D34FA49591D5058660777CCB13162A4E1959D'));dbms_lob.writeappend(v_lob,30,hextoraw('711BAB0233D0A927A6EAB314FF007630863568D7196FB8142AA80391C1C1'));dbms_lob.writeappend(v_lob,30,hextoraw('C1FAD7130EB2F146F14B93B5C85E0AB2ED0490430193C8C641FCC73663D5'));dbms_lob.writeappend(v_lob,30,hextoraw('A109E66E62D9DA85D3694241CF463D8E01C0E319ABF69A2567177EDE6724'));dbms_lob.writeappend(v_lob,30,hextoraw('F072774F55F675BFCFEF3B0BCE4290A18BF0D8DA40E38C86E0E781C579E5'));dbms_lob.writeappend(v_lob,30,hextoraw('B4ED67AF5DC7E64A7CBD5EE2F218C8C6E4BDCDC2FA008A25DA3209C463D6'));dbms_lob.writeappend(v_lob,30,hextoraw('B467D45E4C832794003B382C38CB0562AC0825724679C76AE5F526496F2D'));dbms_lob.writeappend(v_lob,30,hextoraw('66460F398A38F0BF301E4CC76B2F21882B21079E303F1E872E7A725D55A4'));dbms_lob.writeappend(v_lob,30,hextoraw('BFC4B4BF7D5366986C3BA69C25EF2945C5E8F6DF7FC0F728DC491A48BD24'));dbms_lob.writeappend(v_lob,30,hextoraw('4571F46008A7D65687319F4AB290E73E598F9EBFBA768C7E8B5AB5EC5397'));dbms_lob.writeappend(v_lob,30,hextoraw('34212EB28A6FD6DA9F37523C95270FE49CA3F73B05145156405145140051'));dbms_lob.writeappend(v_lob,30,hextoraw('451400514514005145140051451400514514005145140051451400514514'));dbms_lob.writeappend(v_lob,30,hextoraw('005145140051451400514514005145140051451400514514005145140051'));dbms_lob.writeappend(v_lob,30,hextoraw('451400514514005145140051451400514514005145140051451400514514'));

Page 61: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('00514514005705E34D5161FB269BB0488E1F52BA5660A1A1B30648E3E411'));dbms_lob.writeappend(v_lob,30,hextoraw('F34E10FF00C040E735DED783F8A6E85C6A7AECF247BD566874C452C0FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('A998798701811C443FAF5AE3C6CDC69C629DB9E5BFA6ABF1B1E8E594A352'));dbms_lob.writeappend(v_lob,30,hextoraw('BB9495E34A0E5FF6F3D17F9FC8E2F51D527D4677B89DC48D34CD305DD808'));dbms_lob.writeappend(v_lob,30,hextoraw('4820807038C703D3A557BDB9F3238E08DBC88A352560562D891B962CD81B'));dbms_lob.writeappend(v_lob,30,hextoraw('8B772147E3515D59BC50DA970A04B17DA558392CC849C640270060F0403C'));dbms_lob.writeappend(v_lob,30,hextoraw('73914F5D3666322ADBC6CD6D0ADD4DE748161484B46A8F23B322AC659D47'));dbms_lob.writeappend(v_lob,30,hextoraw('DF1F7864F35E5495DE9B2F9EDFE47D546D15156B5D5BC97919D13C89F282'));dbms_lob.writeappend(v_lob,30,hextoraw('D873F7029746750CAADB7904F2403DB3DEAC233DC4C44CC542A1DA4273C1'));dbms_lob.writeappend(v_lob,30,hextoraw('270157A1CE49E41C7E5575349BB67B88963F2E4B5805CDCE5A33B610C9F3'));dbms_lob.writeappend(v_lob,30,hextoraw('B3330431EE75C1DE410475A963D1AE5E59C49E545F645F3AE1A69A288451'));dbms_lob.writeappend(v_lob,30,hextoraw('B1440ECC4AA042D228C8206586719A4E37F2D3EEF31F32D55FA14D0B45E6'));dbms_lob.writeappend(v_lob,30,hextoraw('11842E817AA9C2649DBEA09619CF5C70315A508C3447CBDC3CB2C3A97393'));dbms_lob.writeappend(v_lob,30,hextoraw('B81232C471C00473F5AD14D25ADE45844B125CCCA40F3A78230149520DBB'));dbms_lob.writeappend(v_lob,30,hextoraw('BBE1D9C15395C7CA71D09AD787485B39ADE1B82239991E431F9C85CAA12C'));dbms_lob.writeappend(v_lob,30,hextoraw('C542E4B6D43B8B7CD8C723BD4DB76B6DAFF95C994969DDAD3D176324C8D2'));dbms_lob.writeappend(v_lob,30,hextoraw('488CC598ED4DCB1A2C18088B1AA0D8B8C04503EEE49E482726B4AEF48BB9'));dbms_lob.writeappend(v_lob,30,hextoraw('6DA0B8473144AEE8E8A818CF14D1E1CC71B14E621F3F5C9C151D6B567BA8'));dbms_lob.writeappend(v_lob,30,hextoraw('2DD1628C4853CC6977485915506D8C385CAB00581E71EE0600AA97BAAC71'));dbms_lob.writeappend(v_lob,30,hextoraw('470452C7733486409208E3192C31B5628C120800EE67618201356A5CAEFE'));dbms_lob.writeappend(v_lob,30,hextoraw('5BBEECCBDE95B955B5FC0E49239CB225C5AED9ACA696059A16552CB23068'));dbms_lob.writeappend(v_lob,30,hextoraw('623190AED84F98104804F23279D70CB023AA05452D9504E0E40C0206E033'));dbms_lob.writeappend(v_lob,30,hextoraw('9CFF00FAAA1998992631E14E40C394F3085E00F3142AB0DAC141EB91DAA2'));dbms_lob.writeappend(v_lob,30,hextoraw('97695308F97692DB9C6DDF8C00559BA2E0AE3A678A87352BB8AB2F5FD4B5'));dbms_lob.writeappend(v_lob,30,hextoraw('0E55ABBBDFD7BE88B8C8F7B17EE491790100071B449B70420DCC4F2492AB'));dbms_lob.writeappend(v_lob,30,hextoraw('CE3DB3496D6E11A3F2646139558CACC0C6ECF9562491B908233B4E73D381'));dbms_lob.writeappend(v_lob,30,hextoraw('51DB5D7D9D183A962CECD801642AD8F94918EA063048E38AD88E68A61343'));dbms_lob.writeappend(v_lob,30,hextoraw('22C8EA4EE57558C950A7950CB99170133B89385380685EF2D7A697F5FF00'));

Page 62: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('213F76F6DBD489E25BA0232A4DC34BB1148D8C39CFDE271C1CE471D8E6AF'));dbms_lob.writeappend(v_lob,30,hextoraw('45A2DCC966D736E152379632236651B4282E5412723710A7DF683CE05559'));dbms_lob.writeappend(v_lob,30,hextoraw('11275B86844B10016430CF22B48A620413D41F2CA8F9B3B89DA453659673'));dbms_lob.writeappend(v_lob,30,hextoraw('026E22389A50EC67271B91997F791A333AFF0011000270334B55BA725AE8'));dbms_lob.writeappend(v_lob,30,hextoraw('BF5FBC9BDED66A2F996EAFF85CD7B57F2EDAD1218E19A49A5F32E65922DF'));dbms_lob.writeappend(v_lob,30,hextoraw('B595950223B23050A09276E73DC1AD6BD997CF8F4EB7F25D6232B79BF655'));dbms_lob.writeappend(v_lob,30,hextoraw('B41D0B2AEC46DEC808C83F2EE273B7BD7062F42EE30AB6FB762F2943B999'));dbms_lob.writeappend(v_lob,30,hextoraw('598E0A2123A2F3824924F15B570D72D6064B8FB4BE9E66F2E179B9559501'));dbms_lob.writeappend(v_lob,30,hextoraw('62150FF16C0F9E831D719AD69CE4E2E1C9BAD1DDE896EECBA6BA99CE11E7'));dbms_lob.writeappend(v_lob,30,hextoraw('8CB9B5BBD1A5AB7B6BDD7406D46659B6798205C26E78DF72E7E600A01B0A'));dbms_lob.writeappend(v_lob,30,hextoraw('8CF18C93D73C1A7C0EC64467125CF9CA4804ED8860072C9B03125467A824'));dbms_lob.writeappend(v_lob,30,hextoraw('E718AC23246DB3CB49A45219BCC6DE46571B98A02A00030320F39EA0D6DC'));dbms_lob.writeappend(v_lob,30,hextoraw('9A840B64B6E659A421373E42450AC815958A3EEDF206248519C104679ACF'));dbms_lob.writeappend(v_lob,30,hextoraw('ADEEBFAD3A9AB5A2B2DC7492C892B07856270A1564762C06FF009F057250'));dbms_lob.writeappend(v_lob,30,hextoraw('11C1C64E33CF3CD5569C1914022621558E0E5F0081801830EA71B883C63A'));dbms_lob.writeappend(v_lob,30,hextoraw('5671BC5FB38096ED1A339F319E30DBB203637B727207CBC7D3150F25C328'));dbms_lob.writeappend(v_lob,30,hextoraw('4058300ABEB9E8C5892339C8ED91CF4A9D5BD6FAFF009D8AB2FEB53519D9'));dbms_lob.writeappend(v_lob,30,hextoraw('8AF9C1923CC9921949C8C606DC83DC039EBF855B865B78C113472CAB164F'));dbms_lob.writeappend(v_lob,30,hextoraw('CB325BEEE542B6F68E5C838C9001FAD66473C2046ACD2391B9892EAAA246'));dbms_lob.writeappend(v_lob,30,hextoraw('C1E081938EB838E73E9CD69E75924DF90EEB2E72E4B679C905B7153D3B63'));dbms_lob.writeappend(v_lob,30,hextoraw('9E7DEA937BEEC4D5F4E9E4DAFC8D9798189D941019C9518C81827081B20B'));dbms_lob.writeappend(v_lob,30,hextoraw('1E7AE074AA5338F3AC9F241105E96E58619638C30E06428F623200A6349D'));dbms_lob.writeappend(v_lob,30,hextoraw('766DF972E417628B9C70091EA3D7D3D29972F2C4D04CCAC42D84D323E339'));dbms_lob.writeappend(v_lob,30,hextoraw('127EEF7162083BB91CFE75B475BA5777FCDE8B4F999BB2DF4B27FF00A4B3'));dbms_lob.writeappend(v_lob,30,hextoraw('D83C1EECFA245B94295B9BA5C03B871331E0E4FAE3A9AEA2B91F022B2F85'));dbms_lob.writeappend(v_lob,30,hextoraw('B4B670434C2E67C312C712DCCACBC9E4FCA4575D5EC50FE143E7F7733B1F'));dbms_lob.writeappend(v_lob,30,hextoraw('298AFF0079ADE5524BE69D98514515B1CE14514500145145001451450014'));dbms_lob.writeappend(v_lob,30,hextoraw('514500145145001451450014514500145145001451450014514500145146'));

Page 63: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('6800A29293340AE3A8A4A5A0614514500145145001451450014514500145'));dbms_lob.writeappend(v_lob,30,hextoraw('145001451450014514500145145001451450014514500145145001451450'));dbms_lob.writeappend(v_lob,30,hextoraw('01D393D057CC1A8DC9B9B59EEDFF0078D7BA95FC85559637F37728424B60'));dbms_lob.writeappend(v_lob,30,hextoraw('63E566EBCF72326BE97BB62B6974C3395B795863AE42135F2D48DBAC61C2'));dbms_lob.writeappend(v_lob,30,hextoraw('2A9DF76410595A2CDCE40EB8C8C8C67D79AF371EFDEA6BB27F8BBFFEDA7B'));dbms_lob.writeappend(v_lob,30,hextoraw('993A56AF2B75A7F77BDFE65EB99ACAE92CC1736D246F6966C932991520DA'));dbms_lob.writeappend(v_lob,30,hextoraw('5A5B9DD1C6418D5BAAAB3498270A7BCF67776725DEA705C39B58AF2E6DA3'));dbms_lob.writeappend(v_lob,30,hextoraw('4BF685E78D2CED6612B62DF76E632AAA20564C8E7017208C0DACE1901D99'));dbms_lob.writeappend(v_lob,30,hextoraw('1872C73B7DD8023238E87A9C539225C8557276B1249240246074E800C9C6'));dbms_lob.writeappend(v_lob,30,hextoraw('335C1CCAF7693F2DFB5D3FEBA9EFB4ECD5DAECFCF7B9D4D96A10BEB3A889'));dbms_lob.writeappend(v_lob,30,hextoraw('228DED6FC0B349AF632D64209643CCB145708D1A801781B8AE38C8AD1D33'));dbms_lob.writeappend(v_lob,30,hextoraw('45BE9F4FD6AEAC2D63B9BB8A3821B6B798AECB944921B9982EEC02258964'));dbms_lob.writeappend(v_lob,30,hextoraw('8D4EE4DAFB78C567E8FA4BDC5C88B7728164776DACBCE540E581C91EABEB'));dbms_lob.writeappend(v_lob,30,hextoraw('5EA6F25969965B2011ACC0441FE6456DC08CE0306CF048C12319C528CE2A'));dbms_lob.writeappend(v_lob,30,hextoraw('3776B46FBBDDBD3A1CD88A92A6D469EB527CAAD6BC524D6B2D4C5F106962'));dbms_lob.writeappend(v_lob,30,hextoraw('6B7D3C41696F68E974B3CFB1A355B78E0B59834711279DEDB542A9E73581'));dbms_lob.writeappend(v_lob,30,hextoraw('A9C8D7AF0BA6E32DB4FF00691248EA822F2449E692E5D4132C619061B2C5'));dbms_lob.writeappend(v_lob,30,hextoraw('C0E49ACDD43577BA25A547545380C870E645DC9863C8C60F3CF61D2B20DE'));dbms_lob.writeappend(v_lob,30,hextoraw('623121568E4F314A847382A0EFF9B27231204DB8180467347B4E6F79A693'));dbms_lob.writeappend(v_lob,30,hextoraw('95DEBF32A9D2946314DA94968B4BEB2EDAEA6B5E5DBDDB4D72E8D2BF9652'));dbms_lob.writeappend(v_lob,30,hextoraw('341186860B78CEF288899F2D57F8428C649CF24D62BB2CE62E256404ED24'));dbms_lob.writeappend(v_lob,30,hextoraw('3AEF66CB1C2060C147F08CF19C915426BD9EE32C5A65070C4B1DE4024E3C'));dbms_lob.writeappend(v_lob,30,hextoraw('C3D012A4B9E73F8D4F3DEED8A22CDB7E50CAB0A10538009321525816248C'));dbms_lob.writeappend(v_lob,30,hextoraw('8E31C75ACDB94B45E7F79D0A2A0ACAD75BDBA7922EDC46B1052CEB1C0154'));dbms_lob.writeappend(v_lob,30,hextoraw('797111BCB2803EFCAAFF003B124F5C63B5508AE897682E76B2A18C893243'));dbms_lob.writeappend(v_lob,30,hextoraw('05C8E8DC0E060F391EDCD57BAD45EE51239826FDE6413705B61503619307'));dbms_lob.writeappend(v_lob,30,hextoraw('0B92718C60839246310CAAE3058ED460DB54608529DBA655B69C2E4720D5'));dbms_lob.writeappend(v_lob,30,hextoraw('4236493D24FAF990DF55B5FF00ADCDF72F6E0F967CFB7661877218824ABE'));

Page 64: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('1F691F282320A81E9CD01D65422D0959A1E44329E5C0E782A46F39231901'));dbms_lob.writeappend(v_lob,30,hextoraw('81E9915CBC378F6B26496F2CBED28A482BB88E48DA430C1048C0E9D6B41B'));dbms_lob.writeappend(v_lob,30,hextoraw('F79892DCED8CFDE40E5CA923AA91D8E703BFEB4F5836BAB5A766BD04AD2F'));dbms_lob.writeappend(v_lob,30,hextoraw('55F7AF5EE69BDD490319D43B246FB6400AE1A5917795C3127EF2F03209C1'));dbms_lob.writeappend(v_lob,30,hextoraw('EB5A17128B686179E00E6601E349B39F2D4939DEF08CEE51B46010724F35'));dbms_lob.writeappend(v_lob,30,hextoraw('4F4A9BC8C5CBCF033893F773C64497306DC6E53183B993079C6194F208C5'));dbms_lob.writeappend(v_lob,30,hextoraw('51D46D312B5C47746E95819B281FCC61237CDB8B90E4EE273C13839C9AB8'));dbms_lob.writeappend(v_lob,30,hextoraw('B8DF4F8FFAFC4992BBD5FBABAD8D0179030674B57815A27DA91C8CC9B4C8'));dbms_lob.writeappend(v_lob,30,hextoraw('BB449BD7732A0C81821BE6203714979A81BCF99A28E040984B7B54FB3DA4'));dbms_lob.writeappend(v_lob,30,hextoraw('2C301B601BBF85724FDE6CF2D58114B0A7FAC8DAE0F3857628A7AE19947C'));dbms_lob.writeappend(v_lob,30,hextoraw('C36E7BB1CFB7795EE9FEFEDDDE67EF18856CF5ECD9CEDDC381D39F6A2539'));dbms_lob.writeappend(v_lob,30,hextoraw('6B1D7CFA5FD46A115AE975F79AFF006958764916D5C758D5BCD31838C06D'));dbms_lob.writeappend(v_lob,30,hextoraw('CA15B2412AA3A7734924B04CCAA2521D4BBBC92E0A7CCC1808D1173C6EC6'));dbms_lob.writeappend(v_lob,30,hextoraw('DEA0E7F0C45661BCB36CEA0058F76F6C1F520FCCDB79C77ED565F645E486'));dbms_lob.writeappend(v_lob,30,hextoraw('D9BCA0CC61F7380724339C61411D1721BBE2B36BC9DEC5DFF0367E451F7B'));dbms_lob.writeappend(v_lob,30,hextoraw('CC90B1E1A50555101C058FCCE3FE06DDBA1AAB35E0655042AECCEE110F2F'));dbms_lob.writeappend(v_lob,30,hextoraw('241E858487B0E301467B567FDA245C103CBC295EFC2303CB0E1981C9CF34'));dbms_lob.writeappend(v_lob,30,hextoraw('E4E1012C91C6436031DD96F60172381C1E7078CD2B35FD5AE1F8961A78B7'));dbms_lob.writeappend(v_lob,30,hextoraw('261CAEF0198151F2904E00C6E27DF38A7DB85794216C820B286E7A2EE3C0'));dbms_lob.writeappend(v_lob,30,hextoraw('39CE477AA7B970725D76A6D3D06790C015E0919FA53ADE499630E485462C'));dbms_lob.writeappend(v_lob,30,hextoraw('719C367033C1E703FAD559AB79E82FC8DE128280C9B13706E540F988C6EE'));dbms_lob.writeappend(v_lob,30,hextoraw('0F249EA38EBD7359BAADD18E29CC6DB0FD9D6CE162A4E58C67E42086FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('58EFB3006012338EB53DAC819C34AED1A26657CC81F78E3276EE19EFDEAA'));dbms_lob.writeappend(v_lob,30,hextoraw('E8F8D67C67A1D9ED630453CBA8DC1054E05B06BA1BC0E9BA448973DF35BD'));dbms_lob.writeappend(v_lob,30,hextoraw('24D2724AF6D77DECEE97CDA473D469295F45CAEFE96D5FDD73E8DD0ED7EC'));dbms_lob.writeappend(v_lob,30,hextoraw('3A369567801ADB4FB585B03037A44A1CE3DDB35AB505B8223C9FE26247B0'));dbms_lob.writeappend(v_lob,30,hextoraw('E83F4153D7B34E3CB0847F96297DCAC7C8D5973549C9EF29B6FD5BBB0A28'));dbms_lob.writeappend(v_lob,30,hextoraw('A2AC80A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A29334'));

Page 65: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('6680168A4CD2668B0AE3A8CD3334669D82E3B3466999A4CD3B05C7E69334'));dbms_lob.writeappend(v_lob,30,hextoraw('CCD2669D843F3499A6669334EC04F4669B9A3353618F06969946695863E8'));dbms_lob.writeappend(v_lob,30,hextoraw('A6D2D20168A4A5A0028A28A0028A28A0028A28A0028A28A0028A28A0028A'));dbms_lob.writeappend(v_lob,30,hextoraw('28A0028A28A0028A28A0028A28A006488248E48CF491190FD18115F28DA9'));dbms_lob.writeappend(v_lob,30,hextoraw('0F6F2413901E0BC96062182E18852D9F949FBC3A0EBC139AFAC6BE56B8CD'));dbms_lob.writeappend(v_lob,30,hextoraw('878B7C45A748E512E2FAEDE260A0EDD9712DC440739C9466E7D12BCFC7C5'));dbms_lob.writeappend(v_lob,30,hextoraw('F2C64BA465F859FF0099EE64B25CD5E0FAA8497CAEBF545730FEF4C02291'));dbms_lob.writeappend(v_lob,30,hextoraw('3E7460251B8B13820E4633D4F1DBBD6DDADA6151DE291958C6EBB97EF126'));dbms_lob.writeappend(v_lob,30,hextoraw('35202E33F331E3DCAE2B6D74DB3BA4CCB27948ED1B398DC1224230D860C0'));dbms_lob.writeappend(v_lob,30,hextoraw('2AF00E73D4738AE92D8C50241988B980C8E1D482D831B460B1CEE18006E1'));dbms_lob.writeappend(v_lob,30,hextoraw('C7272315E2F3A7D5AB3B3FE91EF4E765A46EFF00E07996B4AB348213883E'));dbms_lob.writeappend(v_lob,30,hextoraw('CDE6C7E6C932EE120E42A01C28E38C923B73D6B93D6350F365755600AC85'));dbms_lob.writeappend(v_lob,30,hextoraw('5972DC82D9627E660CEC7A9039273C55ED575F65CC6018BCC4070B22BBA2'));dbms_lob.writeappend(v_lob,30,hextoraw('E080148DB824024FCBC67BD79C4D365F796770AC186F23232C4285C00C79'));dbms_lob.writeappend(v_lob,30,hextoraw('C739C9CD5C5296CB4B6E65084949CE7BCADA6F634279F3E59F244425C05C'));dbms_lob.writeappend(v_lob,30,hextoraw('E771524E5806CA85041E719CE79ACBB990B32C63323EEC79699EA406E581'));dbms_lob.writeappend(v_lob,30,hextoraw('EC791F4E9D68867219889846B92AB233028DC92C170721739391D68F3522'));dbms_lob.writeappend(v_lob,30,hextoraw('94CBE6BAB478D9F21C9E0648DC72064E3DFD2ABADB44BF33A15E177F6975'));dbms_lob.writeappend(v_lob,30,hextoraw('ED7DD2F31EC24824485808DF6B2C87E65F94B330E8327A9EB93E9D2914A3'));dbms_lob.writeappend(v_lob,30,hextoraw('A94132019272F2448C0203B81662155413C0C0249C62A2DF23BB4F14C932'));dbms_lob.writeappend(v_lob,30,hextoraw('B1CE379439DC7E4F2D8738078E4E33D298B7052558E689448E0B61CED002'));dbms_lob.writeappend(v_lob,30,hextoraw('F2D93280B9C6714D4777BFA7EBD49727B5F95F9EC22ED60CC1838DD90636'));dbms_lob.writeappend(v_lob,30,hextoraw('F994A678E73D037078A92EAF119173B4A8554F30A618BE028F37680B9DD8'));dbms_lob.writeappend(v_lob,30,hextoraw('01B68381C9279A8A5449559E0C2B49C92C03A6474F973B94903DB8C1EF58'));dbms_lob.writeappend(v_lob,30,hextoraw('F13234AD6D75702189C2A799387F2896E0B36D42D80C463E5EF5A2B3BB4D'));dbms_lob.writeappend(v_lob,30,hextoraw('BB74B6ABD37275BD9A57E8FB9619B1192ECC1F69214232EDC720E4E78239'));dbms_lob.writeappend(v_lob,30,hextoraw('04E2AF698D3CA3F70D1C222899A5325C048B0851F3E612429381C0E4E36F'));dbms_lob.writeappend(v_lob,30,hextoraw('24D43730CFB0308619360C3BD832CAAE51B1BC6C2CC3230482011E95CFF9'));

Page 66: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('A0CCD12B373875273BB78C0C63039C1F4ED4F49475D5A7AF5FC84D34F4D2'));dbms_lob.writeappend(v_lob,30,hextoraw('EADFA9DBACF0EDBB3FBA93CF39528AD8594C4236742413D30D823AF351CD'));dbms_lob.writeappend(v_lob,30,hextoraw('75242F6F70BBB6DBB23158E47495CEE3BC3B039208E080178E983CD64DA4'));dbms_lob.writeappend(v_lob,30,hextoraw('F0B2476F2B6D69093B95B9527015FA800AE39539241A7A5E3433982F1123'));dbms_lob.writeappend(v_lob,30,hextoraw('9626642C000B2678391D81EA31E9509BB3D13B5EFB5CA504FAB5DBB7E1A1'));dbms_lob.writeappend(v_lob,30,hextoraw('1CB74F2B193CC246D2CFB80DAA793B768F638E87AF1496F3124C85B685F9'));dbms_lob.writeappend(v_lob,30,hextoraw('4EDEA7D4E38C719FA53AE6D3CC701264642B98581E1C679463FC2C06307B'));dbms_lob.writeappend(v_lob,30,hextoraw('D662C8D1C8558364121931803BF3DFAD3BA96A9F9B1DADA6BB1E8BA5C367'));dbms_lob.writeappend(v_lob,30,hextoraw('A8DA5B4169A6DEEA3AABDE1338F3596086C57E5528E063CE3C37CC191403'));dbms_lob.writeappend(v_lob,30,hextoraw('9F5346C24D1E2935193534BC98246E6CA186401DA72C440656F9542150C6'));dbms_lob.writeappend(v_lob,30,hextoraw('420F7E01AADA6788E182CDF4DBEFB7C9A7DC387B98EC365B9288BB52207C'));dbms_lob.writeappend(v_lob,30,hextoraw('DCBC68493862031392B595A5EA16D05E3B5F426E74B9DA1924B551B67492'));dbms_lob.writeappend(v_lob,30,hextoraw('DB7EC314DB8280C8ECAE194E7AF51569FBA9DBDE8B5EEF46AFD3FA5A19F2'));dbms_lob.writeappend(v_lob,30,hextoraw('EB34EF66B469BBDF4BF5D36B25F89B58B5C5A5CC76EC1268D5A7B799CC82'));dbms_lob.writeappend(v_lob,30,hextoraw('29D1B6BA2489B1CAB01F2E7E6C75AB5A7368E6F6E9F561702C2DD647115A'));dbms_lob.writeappend(v_lob,30,hextoraw('9DF2160E1238E3DC46324E0166C0C7358775A959DC6A0B38B67D3EC85C2B'));dbms_lob.writeappend(v_lob,30,hextoraw('456F032CF2C56EA49C07930ACE580CB376FA567C77AD15E34F85782646B7'));dbms_lob.writeappend(v_lob,30,hextoraw('9EDE51BB7A34C92EE8D832EC954AF04E47B5269DDFBCA56B6CF7B3D6DF2D'));dbms_lob.writeappend(v_lob,30,hextoraw('06ECE3B38B92975D537B5F7DBE66D5C4B05DC2F7496E6D648EE9E111098C'));dbms_lob.writeappend(v_lob,30,hextoraw('A8F0127C993E60183000EFE48E463142DC4B8877B06F250A46A3A2AE0E46'));dbms_lob.writeappend(v_lob,30,hextoraw('3B7A9A8350D5AC2E9D21D36C25B2854292B3CE259249368524B04555030D'));dbms_lob.writeappend(v_lob,30,hextoraw('8519FBC4FB55281B3962C0172EEEED9385CE589E9C6DA249B6AE96EDE9D1'));dbms_lob.writeappend(v_lob,30,hextoraw('3D6DF2D83A2D1AE9ABBBDADD0D896E63B7B590CCD1C6B1C724A412C4CAE8'));dbms_lob.writeappend(v_lob,30,hextoraw('412A1B3D5B700307079AEBFE17E984FDA75B977B5CEB771B602E0652D10E'));dbms_lob.writeappend(v_lob,30,hextoraw('FE3BE18E49E79502BC92E55B5DBF8B4A8098E39184931CEE11DBC3F29E3A'));dbms_lob.writeappend(v_lob,30,hextoraw('8396C75E58FB57D2FE0BB3510C73A294B6B1822B5817B6E5882103D76A77'));dbms_lob.writeappend(v_lob,30,hextoraw('EE5BDABA68C39E708ABBD54A5F2F857DFAFC8E0C6D4F6542A3764DC6D1F5'));dbms_lob.writeappend(v_lob,30,hextoraw('7BFDFA1E82005000E8001F952D45E651BEBD7E53E5AE4B4543BE977D1CAC'));

Page 67: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('5725A2A1DF4BBE8E561725A2A2DD46EA2C1725A33516EA37516024CD19A8'));dbms_lob.writeappend(v_lob,30,hextoraw('F752669D82E499A3351EEA3751601F9A335193499A76112668CD479A4CD1'));dbms_lob.writeappend(v_lob,30,hextoraw('6024CD26EA8F34669D807E69334CCD26EA76024CD377533753734580909F'));dbms_lob.writeappend(v_lob,30,hextoraw('7A4DD51934D34EC2252D499A8B3C526EA045DCD19E6A3CD2E6958B24DD4B'));dbms_lob.writeappend(v_lob,30,hextoraw('9A8F34B9A56024CD19A8F34B9A56024CD19A8F34B9A2C0499A5CD459A5CD'));dbms_lob.writeappend(v_lob,30,hextoraw('2B00FDD4B9A8F34668B0126452D479A5CD2B00FA2999A3345863E8A66697'));dbms_lob.writeappend(v_lob,30,hextoraw('345807514DCD19A2C03A8A6EEA3751601D45377526EA2C03E8A8F7526EA2'));dbms_lob.writeappend(v_lob,30,hextoraw('C0499AF973E28C12E8FE2A5D4E01B7CDDB7258E369570C8C38E73CC8A48E'));dbms_lob.writeappend(v_lob,30,hextoraw('8197BD7D3A5EBC93E2F68E350F0E9D4543799A5C88D2EC5DCC6D669238E5'));dbms_lob.writeappend(v_lob,30,hextoraw('CFFB31929311DFCBC679ACABD2E7A6F4BDB5B796CCEBC0D7F618984AED29'));dbms_lob.writeappend(v_lob,30,hextoraw('7B8FD25B7DCEC711A76A714BB03A33A98D1A33C2EE2401B4ED0ABCA9C804'));dbms_lob.writeappend(v_lob,30,hextoraw('1040F5E6B5A5D61FCC430C6D1AC719513659CBA052A3F763014B104672BC'));dbms_lob.writeappend(v_lob,30,hextoraw('91CE060F89E87A93412358C8ACB35B890AB6EC6E45766319CB11942E7180'));dbms_lob.writeappend(v_lob,30,hextoraw('3E5FF779EBC5E24F0BE0EC661DDB0CC40E368C65B23E626BE72A61F925D2'));dbms_lob.writeappend(v_lob,30,hextoraw('CB67EA7D829A946F6E8F4DECFA976FF5292E6590310A01DA300AAEC24E4F'));dbms_lob.writeappend(v_lob,30,hextoraw('2DD72C792D8E49AC196EE459E38D07EF9E113A73F2A8C9505B1F30DDD547'));dbms_lob.writeappend(v_lob,30,hextoraw('FC0BA75491D7CE54998C7131DF2CA3B44ABB9B1B782D8E319CE6A95AB995'));dbms_lob.writeappend(v_lob,30,hextoraw('E5B9758D55E479DBFBAA24002A93F78055DAAA0761E95B28D95ADEBE63BD'));dbms_lob.writeappend(v_lob,30,hextoraw('BDE5BDF4F2B6ADDBBAE86944F2332232A920EEDDF7036DCA630C78009E0E'));dbms_lob.writeappend(v_lob,30,hextoraw('3071C7351C93C636B29FDF00CDE5CB9F264000E15800C991CE198A9E8315'));dbms_lob.writeappend(v_lob,30,hextoraw('52EAE92468A3C111C6428604E594E5989E40E7249C0FE554E791A7FDEA33'));dbms_lob.writeappend(v_lob,30,hextoraw('1F2800B201C303C018E0FD7D6AD435DBD4C9CFBBD6E6847751AED694B333'));dbms_lob.writeappend(v_lob,30,hextoraw('30931192840192541DA541E3B71CD48D76D3C72452A09130A3713F3AB762'));dbms_lob.writeappend(v_lob,30,hextoraw('B9E7D720F5AC75B9054C6CCA1CAE46DC0CE49CEE20E013CF03DA9D15DAC5'));dbms_lob.writeappend(v_lob,30,hextoraw('22A15215CE32DCE18719183C8273C1ED43D35B6ABFAD057BE8DE8FFAD49F'));dbms_lob.writeappend(v_lob,30,hextoraw('EDB2D8CF244F23326D1F672F821803C64E4160064607E3525E3C57C91B86'));dbms_lob.writeappend(v_lob,30,hextoraw('2B2A796C020014AB649C67D0AE464F5A8A7823D42392DFCC315CC4BE7C3B'));dbms_lob.writeappend(v_lob,30,hextoraw('8021F031B14E7201EA38EA3A563D8BB885C364F95210719E03671DBD29A4'));

Page 68: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('9FBCB492D1AF5EA17927C92BB83D9DFB7437EDDCCD669346CEDB80C8524E'));dbms_lob.writeappend(v_lob,30,hextoraw('08182D81C8FC466B32FA45478E52DBC640DE09C9DC338EB9E3D6A1D3AF36'));dbms_lob.writeappend(v_lob,30,hextoraw('CD7767228F2E6959D5B8180FDB0001D47EB576EA3DD6ED004F91172A40C6'));dbms_lob.writeappend(v_lob,30,hextoraw('48047239EC7AD0972C9A6BFF00D97B157728A6BA77EE88BCF655063E8DCF'));dbms_lob.writeappend(v_lob,30,hextoraw('39E73DF3DF35A8F731DE4097132E66859629981CB140A42B1CF7CF5AE6EC'));dbms_lob.writeappend(v_lob,30,hextoraw('EE580F25D0A9864643920B81D73D071822B4ECAE3CB79C850F1EC3F2939E'));dbms_lob.writeappend(v_lob,30,hextoraw('7FDDCE4F15128D9BD355E7BA654657B767DFA1A70DCC119D9967873C824F'));dbms_lob.writeappend(v_lob,30,hextoraw('418E40E80E2B46EAD16E194A4E85A41BE29B851267F81CFF007FA573C503'));dbms_lob.writeappend(v_lob,30,hextoraw('C0D25B0F361CB170A32E80E31919C91C71C525BCD208BC94903444172B21'));dbms_lob.writeappend(v_lob,30,hextoraw('0BF32FFB3B49CFE350E2EF74D76772F996CD6DDBCC9E747B69DE29188603'));dbms_lob.writeappend(v_lob,30,hextoraw('240040C2FA679E7D6A349F0CADB5594A9C0627046080480413FD6A66BC70'));dbms_lob.writeappend(v_lob,30,hextoraw('D159EA287C965CDB5C86DC541E5BA8C301C65491552EADBCB611B3874C06'));dbms_lob.writeappend(v_lob,30,hextoraw('56E9E62F5520671822AEFF00276F556EEBFAD08FC56DDB5F324699F681F2'));dbms_lob.writeappend(v_lob,30,hextoraw('9C7438EBEBD7DEA4567675EE58052324F6CF1EE2A92055047078C1E9DCF0'));dbms_lob.writeappend(v_lob,30,hextoraw('722944EA484006E2FB571DC93803F2A5ABD3F41BD8BA588628A4E47CB9C8'));dbms_lob.writeappend(v_lob,30,hextoraw('EE48C63DC9A9EEAED6DACE78CCFF00BE8C468CAAA3180C0EC073DBBE392D'));dbms_lob.writeappend(v_lob,30,hextoraw('C5549664B147791A279F68181D62EBC771B8AFAF4C5674170F77702EA755'));dbms_lob.writeappend(v_lob,30,hextoraw('581242D147DC9FE1279E9E95AA4F4B2EA4E9AB93B69A2EFF00D753B7F09E'));dbms_lob.writeappend(v_lob,30,hextoraw('9CF14887699753D4CA4410E3E55760CB1AE391D32C7F1AFA8EC604D32C6D'));dbms_lob.writeappend(v_lob,30,hextoraw('6C23C1F26251230FE3948CC8C7EAF93ED5E53E01D25F4F84EBB7CBB6E2EE'));dbms_lob.writeappend(v_lob,30,hextoraw('1315A42C30D1C2E43798C49CEE703818185FAD7A08BCC9E7BFBFD6BD6C1D'));dbms_lob.writeappend(v_lob,30,hextoraw('0718B9CB791F3199E2956A9ECE0EF0A7D7BCBFE01BE25E9CD3BCCAC3FB48'));dbms_lob.writeappend(v_lob,30,hextoraw('E39EFDAA417073EA7AFA576D8F2EE6C79BFE14A24AC9139EE31F8D3C4DFE'));dbms_lob.writeappend(v_lob,30,hextoraw('734585734FCC14BBEB384C29DE68C7AD2B05CD0DF4BBFDEB3C4B9A5F3451'));dbms_lob.writeappend(v_lob,30,hextoraw('6197B7D2EFAA424A0494582E5DDF46FAA5E67E94EF3051602DEFA37554F3'));dbms_lob.writeappend(v_lob,30,hextoraw('281251602D6EA5DD55B7D1BE8B01677521355F78A37D16113EEA4DD50EEC'));dbms_lob.writeappend(v_lob,30,hextoraw('F7A377D280252C3BD266A227349BB14C2E4B9A4DD51EEA66EC7BD16026CD'));dbms_lob.writeappend(v_lob,30,hextoraw('349A8B7526FA2C225CD21350EEA4DD4EC068EE14B9AAFBB14BBAA6C55C9F'));

Page 69: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('752E6A1CD1BBB63F2A009F752E6A00D4BBA8B01366977543BA97752B012E'));dbms_lob.writeappend(v_lob,30,hextoraw('68CD459F7A3340C9B751BAA2DD46EA2C04D9A3350EEA5DD4AC04B9A5CD43'));dbms_lob.writeappend(v_lob,30,hextoraw('BA8DD458097752E6A1DD46EA76026DD46EAAE5B3485F34AC058DD485B1F4'));dbms_lob.writeappend(v_lob,30,hextoraw('AAFBE9BBE9D80B3BFDE8DFEF554C98A8FCEE7DE8B016CC87DBF1A6992A99'));dbms_lob.writeappend(v_lob,30,hextoraw('9071D38A8DA5EB834EC05B32FBD52BC48AEEDAE2D6750F0DC44F0BA9E415'));dbms_lob.writeappend(v_lob,30,hextoraw('7041041F6A89E618EBEDC55492E3AE4F5F5A7CB7D18AE7C71E2ED0EFBC37'));dbms_lob.writeappend(v_lob,30,hextoraw('ACCB6CBE7892D24F36C6750419EC864AB06C60CB02E11B03EE0CE30398B4'));dbms_lob.writeappend(v_lob,30,hextoraw('FD685D44082B1CD100B2C60BFCCC303CC552C4ED20E78E1718AFA17C79E1'));dbms_lob.writeappend(v_lob,30,hextoraw('F5F12E9ABE44820D46C66FB55A4C172772AB650F39DAC0F38F4079AF932F'));dbms_lob.writeappend(v_lob,30,hextoraw('A0B8B3B8B8BAB756B6BBB3B8717B6D8DAD0C81B648C8380D0BB13C01F28E'));dbms_lob.writeappend(v_lob,30,hextoraw('0E4735E6E230DBF4B6A9FF0099F4181C75E294DDE4BE2F35D19E837134D7'));dbms_lob.writeappend(v_lob,30,hextoraw('70CA12768A6F2D137B1C8288C876316CFCA428031DAA3F366110867410B8'));dbms_lob.writeappend(v_lob,30,hextoraw('C156C1111070490C0907710483919ED5C9E9FADC777FBB1886E8007CB639'));dbms_lob.writeappend(v_lob,30,hextoraw('4908E0EC6E09FF007704FA135D01BF91A3585DD7C80FB826C2C171C0C120'));dbms_lob.writeappend(v_lob,30,hextoraw('1C1FEEE7AF35C0E128BB34AF7BFF00C33EA7ADCF1A8AF195D5ADE5F73D89'));dbms_lob.writeappend(v_lob,30,hextoraw('DD5B016460C3FBBC85C60B6739CE33F89A92495A51BD3CB57DFB4C418AA6'));dbms_lob.writeappend(v_lob,30,hextoraw('C51F2B227380403903273CF7A7691A45E6B37B1D969B716D0A476F757177'));dbms_lob.writeappend(v_lob,30,hextoraw('35FCDB6DA38205333CC5F68789238B86CEFE7B7359537DA6248E4B8B49AC'));dbms_lob.writeappend(v_lob,30,hextoraw('F32CD007725A3796355322C5285D8C4248A49EA030E051BE9A3BADBFE07C'));dbms_lob.writeappend(v_lob,30,hextoraw('88775BDFD7CBFAEE2B39DE4B47CA92030EA4B1E381CFE1F9D11C8BB595E5'));dbms_lob.writeappend(v_lob,30,hextoraw('5E0F2490197B803B927D07A7355BCE28A0ED03721071D3DD7A03CAFE3F5A'));dbms_lob.writeappend(v_lob,30,hextoraw('AE1D263B88D9BC1F948E847A7E1ED4F97417359EFBEFE86DDA5EB79915BC'));dbms_lob.writeappend(v_lob,30,hextoraw('CCB1FCDBA0B85C92AD9E118E480AC40C83D0D509AE5A1BCBB0AA0976DD82'));dbms_lob.writeappend(v_lob,30,hextoraw('08507181E9FE155999A31FBA180067009E7A138E319EFED51DEEAA2EA5B7'));dbms_lob.writeappend(v_lob,30,hextoraw('B8685958C222940E8ED0E0039DBC1C60D28C75768DD35F8EFB79FA8E5515'));dbms_lob.writeappend(v_lob,30,hextoraw('BE2B34FB747A7E048B36DB8731FDE27796E0800AA83C76191FAD74715F89'));dbms_lob.writeappend(v_lob,30,hextoraw('232C42807E42A7A81FCF9AE1E3924324D2A7C8A54023B13EE71CE78AD049'));dbms_lob.writeappend(v_lob,30,hextoraw('C432A856005C80E013F74F71EFED553A7F7A5F86EC54EB5BD1BFC5BD0BF3'));

Page 70: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('C822BA9E5419DF1A1C67BE586475E718A9ECE68A19F3938C296C91F78F5E'));dbms_lob.writeappend(v_lob,30,hextoraw('47D7F1AC892479243238D807CA00DC324719C7EB4FF30ED1F229DA70587F'));dbms_lob.writeappend(v_lob,30,hextoraw('939A1C6EACFAAD7CC39DDDB5EABCB537DD9ED6E45C5949B55FE668C9186E'));dbms_lob.writeappend(v_lob,30,hextoraw('7D323A512FDAD984DA6A2C8E06F9605524EDE85940F9F00D62979248D829'));dbms_lob.writeappend(v_lob,30,hextoraw('C3C2DB80519CAB7DEC9E076A5B6B9961956584CE93A9F976F4C753CF423D'));dbms_lob.writeappend(v_lob,30,hextoraw('722B3E576BDD36B477EBDAFF00E669ED2EF97549F6DD7A7F917E0BB3751C'));dbms_lob.writeappend(v_lob,30,hextoraw('96978009118AA86F97072791939CF6AD4D2A07BA56B3BA127936E1E68A75'));dbms_lob.writeappend(v_lob,30,hextoraw('8D9DA0C7F7CE0FEECF39F7C7354E5BDB29D85D5DC03ED9D0FD9D942BB000'));dbms_lob.writeappend(v_lob,30,hextoraw('EE75DBC1FD7DAA4B63A86A2CF02C8D043700B952EB1978E142FB72C50615'));dbms_lob.writeappend(v_lob,30,hextoraw('4672C40E32454B4E5F0AE44DDF577B3EBCBDF4348E8EF27CEDAE9D56E9C8'));dbms_lob.writeappend(v_lob,30,hextoraw('80B3CAED1DBC6CDCE72A3E4CF4CB3740314D9AE60D323244A92DD3AFCE41'));dbms_lob.writeappend(v_lob,30,hextoraw('0769EB8503EEFA13D48E959771E278ED6DA7B2B1B6884536D5370E59E4F9'));dbms_lob.writeappend(v_lob,30,hextoraw('73931F000CF7620FB0EF5CABDCBDC4A24624B6738CF3CF3927A924D6F1A3'));dbms_lob.writeappend(v_lob,30,hextoraw('2968D5976EBF37FA18CEB421ADEEFEE5F23764BB9AE6432CED8859BF7712'));dbms_lob.writeappend(v_lob,30,hextoraw('0DB939E491C9C57A8F81BC34D7D2C5ABEAD1B47A7404490C4E36FDA9F1F2'));dbms_lob.writeappend(v_lob,30,hextoraw('6030E61070723EF63D2B96F0B785CDF18F51D5B74365195314057E7B8C64'));dbms_lob.writeappend(v_lob,30,hextoraw('E4F20A20E3B1CD7B2ADF0DA91A0548A2458E38D38088A30AA00EC0015E85'));dbms_lob.writeappend(v_lob,30,hextoraw('0C3276949597E76D2CBF53C6C663A4DCA9D39795D745E4763F6E2EC395C0'));dbms_lob.writeappend(v_lob,30,hextoraw('18500F0001C003B5585BA1EB8FF39FE75C9457209F4FC7F1AB8973DB273F'));dbms_lob.writeappend(v_lob,30,hextoraw('E7BD7A078CFF0013A95BA1FDE181EFFF00D7F5A956EBDF23AFE7EF5CCADD'));dbms_lob.writeappend(v_lob,30,hextoraw('0CF278C77353ADD741914C968E952E7DFF0033C54C2E8119CFF9FCEB985B'));dbms_lob.writeappend(v_lob,30,hextoraw('924F6E39EBD7A54EB719EE7DE80B1D28B8F7A78B8FD6B9D17207FF00AEA6'));dbms_lob.writeappend(v_lob,30,hextoraw('173F9F5E690ADE46F098F1D31EF4F597DFFAD61ADCF1FE1532DC6476EBD3'));dbms_lob.writeappend(v_lob,30,hextoraw('34580DA12FE74E130E3902B205C5384D9EF4580D7F3BE86944B594253D33'));dbms_lob.writeappend(v_lob,30,hextoraw('CF5A904D4AC069093DC52EFF004C56779A33DCFAF34F1303C5005E129FFF'));dbms_lob.writeappend(v_lob,30,hextoraw('005538499AA1BE9DE60C7345845EF33DC51BC7AD52F3052EFA065D120C51'));dbms_lob.writeappend(v_lob,30,hextoraw('BC7AD52DE7AFA52EFC5022E6FA37FBD54F33B51BFDE802D6FA37D56DDEF4'));dbms_lob.writeappend(v_lob,30,hextoraw('6EE6981637D26EA8375377D022C16A6EEA8370A4DDC5006986F7A5DD5583'));

Page 71: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('F7A5DF4AC5167751BAAB6FF7C538B516027CFEB4BBBEB506EA3751602C6E'));dbms_lob.writeappend(v_lob,30,hextoraw('FF003FE79A5DDE87F3355B752EEFA7F9FD6958658DD4BBAAB86146EA2C05'));dbms_lob.writeappend(v_lob,30,hextoraw('9DD46EAAFBBF2FC693751611637FF934BBBEB558BD37CCF5A2C32D6FFAD0'));dbms_lob.writeappend(v_lob,30,hextoraw('5C555DFDF8A6993E94580B7BC7AD377FBD54320F5A679A33D79A761170C9'));dbms_lob.writeappend(v_lob,30,hextoraw('F8D26FE3AFE5548CA075CD33CD23BF6EF45865DF371DFBD30CB8F4AA5E6F'));dbms_lob.writeappend(v_lob,30,hextoraw('0726A279703AF39CFE14580BFE767D7BFF009EB8A8CCC3DFAD6734C3B1C7'));dbms_lob.writeappend(v_lob,30,hextoraw('B5577B8009F98F273DFDB8F4A7611A6D37F9E2AB3DC75E7FCE6B31EEB1D1'));dbms_lob.writeappend(v_lob,30,hextoraw('81EFF375FD381549EEB23AEDE7D7DBD476A2C3359EE3DCE471FD6B3A5B8E'));dbms_lob.writeappend(v_lob,30,hextoraw('BC9F7C7F81EF59F25CF5F9AB3E5BA61BB0C3F5F6A63B16EE2EC8F5C67DB3'));dbms_lob.writeappend(v_lob,30,hextoraw('DEBC9FC6BE1A5D533AB699B60D5603BB38DA265FE257DA0E49524027D706'));dbms_lob.writeappend(v_lob,30,hextoraw('BB99EE73C649E7B7E3DBAD644F71D72DD7DBF4EB5324A4ACCA839424A51D'));dbms_lob.writeappend(v_lob,30,hextoraw('D1F315FD8F9B349108FEC1A8C6CC25B77FDDC4EDFC4D11FE124E38381F4A'));dbms_lob.writeappend(v_lob,30,hextoraw('8ED75DB8B67306A092388D7CB063502752BC0CE4AAB03EA4FB835ED3E22D'));dbms_lob.writeappend(v_lob,30,hextoraw('1AC3598B2EA915DA9CA5C46A15F201C02CBC915E39AAE997B625A3BFB7F3'));dbms_lob.writeappend(v_lob,30,hextoraw('EDD5884B95C39C038524AE587E35C5528746935FD6CFA1EA50C54BA37097'));dbms_lob.writeappend(v_lob,30,hextoraw('5ECFD7B9B76D7CAE82E2DA667031B2485F12A1E41561C30EE0E78ABD73AB'));dbms_lob.writeappend(v_lob,30,hextoraw('5C5E69B0E9F24A2486D5A448720931F9B70D752055C6DF9E63976C963851'));dbms_lob.writeappend(v_lob,30,hextoraw('8C0C5797B43344C25B4B96CAF4DAE51C74E8C083FF00EAA9E1D6AFEDDB6D'));dbms_lob.writeappend(v_lob,30,hextoraw('C0332F3B8C99127D44ABC9E7D73D2B96586D6E9A6D3BA4F469A3BE38CD1C'));dbms_lob.writeappend(v_lob,30,hextoraw('649C53566D6B1B3DCEC8493C4BF295C005B6E77678190D9C1E9E80D39750'));dbms_lob.writeappend(v_lob,30,hextoraw('81C067530B74E395E07E8335896FAE58CC079F2496EC073E6C6D2A75E9BE'));dbms_lob.writeappend(v_lob,30,hextoraw('204FE69C55F37565328905CD99560C399046C48E3EEC8109C7D2A5C1ABB9'));dbms_lob.writeappend(v_lob,30,hextoraw('425EABFCF66546517F0558E9AA4DFF004D1796F817088CAC245186C8F5E9'));dbms_lob.writeappend(v_lob,30,hextoraw('83D38E9514F34EE0C26D8C6C24DD9232DF37190476C54090DB3B029B1995'));dbms_lob.writeappend(v_lob,30,hextoraw('4731BC4C327D831FFEB53D6D65208135C82BE92678EB81F3118A8BC13BE8'));dbms_lob.writeappend(v_lob,30,hextoraw('BD7FE0791ADAA496B76BCADB7CC7C28E1999F7F18EBD3214727B66A63E5C'));dbms_lob.writeappend(v_lob,30,hextoraw('F0A9046FB697EF1200C60E33CE0E0D30D834C15B74CC080581B808BCF18C'));dbms_lob.writeappend(v_lob,30,hextoraw('33A8CFAF149F66B78B3BC5842BCEE373790039FA1909269732BDD3D7CADF'));

Page 72: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('35B8284ECD725A3DDDFE4F6E83D753813725CC832BC640CF4F4ED4C5BD32'));dbms_lob.writeappend(v_lob,30,hextoraw('0516D0CAEB8CE480A8411D7764D466EB4687292DF59073D0DA4325CA8E73'));dbms_lob.writeappend(v_lob,30,hextoraw('F79232A4FE354E4D7F4B8005B78AE6F36F03CE22DE33EF84C923D881D6A9'));dbms_lob.writeappend(v_lob,30,hextoraw('42FB539DDF7D17E36FCC995451F8EB53567D1A72FB95DFE069C577319F68'));dbms_lob.writeappend(v_lob,30,hextoraw('009381B21567E9D412319F7AD794A8FDF5FCF6D631E7912362423B058973'));dbms_lob.writeappend(v_lob,30,hextoraw('DBB938F5AF3F97C437EE0ADB88AC97B0B141037BE6507CC3FF007D56519A'));dbms_lob.writeappend(v_lob,30,hextoraw('4762D23B3B6492598B1E7A9C939EBD6ADD0BB4FE1B2E9AB7F7EDF899C717'));dbms_lob.writeappend(v_lob,30,hextoraw('18C5A5CD535FB5EEC57977FC8EF67F10E9F684AE9D14F34D9CFDA270985C'));dbms_lob.writeappend(v_lob,30,hextoraw('1E8A092A01F5E7E95857DAD5DDF7FC7C4B98958B2C4A008D4F4C9EECD8EE'));dbms_lob.writeappend(v_lob,30,hextoraw('735CFAF99210B1A3364E3FCE2B72CB469A521AEB31478079E58F4C00BC9E'));dbms_lob.writeappend(v_lob,30,hextoraw('7DEB485149AB2D6FBEEFEFFF00231A98B93BA72B2ECB45E96EA55B74B8BD'));dbms_lob.writeappend(v_lob,30,hextoraw('90470A348EDC01D7FA600AF4DF0F6856DA6B25D5F797737414148BAC71B7'));dbms_lob.writeappend(v_lob,30,hextoraw('072DBBEF30C63D2A95947059A94B68C47C0DCC146F6C7AB7DEFC2B621624'));dbms_lob.writeappend(v_lob,30,hextoraw('8C927BF1FA9EBEB5D50A696AFEE382A5794F44DDBBF53B28EFDA439DDD38'));dbms_lob.writeappend(v_lob,30,hextoraw('C0E00F61ED5A10DD1CF53D3F2F53D6B9385C819071DCFE5E95AB14846DEF'));dbms_lob.writeappend(v_lob,30,hextoraw('C74E9DABA13395ABFF0048EA23B9C63278EDFE735752E7032323D3F1AE6A'));dbms_lob.writeappend(v_lob,30,hextoraw('39881DBA74EBEF56D265F5E9C639FF00F5D3B90D7A9D02DD1C0049CF5AB4'));dbms_lob.writeappend(v_lob,30,hextoraw('2E38CF3D3FCE2B9C598763EF81F9F43F4AB2B373D7F2EB45C968E816E303'));dbms_lob.writeappend(v_lob,30,hextoraw('AF1FE7BD4EB718C76EDFFEBAE7966CF73F4FF1A9967C707E9C9EDEC29DC2'));dbms_lob.writeappend(v_lob,30,hextoraw('C740B719FE2F6A996E338E4E2B9F5B81C73FE7E95389C71C8E9DFF009F14'));dbms_lob.writeappend(v_lob,30,hextoraw('5C2C740B7191D7FC8A916E31DF3CFAF1580B73C919CE3F2A945C0CF5E7D6'));dbms_lob.writeappend(v_lob,30,hextoraw('9DC563A04B8CF7FF00EB558171EFFAD738B3707E6C73EFFE353ADC74E68B'));dbms_lob.writeappend(v_lob,30,hextoraw('8ADF33A213F07AFE1DEA459B3D722B016E3DC7E39A9D67F7A02C6E0B8006'));dbms_lob.writeappend(v_lob,30,hextoraw('09A9166C8E0E6B19661CE483C548B28CF5E3FAD02360CA3FFD54E1275C9A'));dbms_lob.writeappend(v_lob,30,hextoraw('CBF3863EF7F3A7ACDEA79A0563543D2F983DEB344B8EFF00CE9FE66475FF'));dbms_lob.writeappend(v_lob,30,hextoraw('003ED401A3E6FF00851E6D67893DCD49BF23AFF4A02C5CF333ED4FDF5477'));dbms_lob.writeappend(v_lob,30,hextoraw('8CF5F7A51203DFA53158B9BCE7AFB52EF38AA7BFDE943FBD0162E07F7A37'));dbms_lob.writeappend(v_lob,30,hextoraw('FE955038F5C51E66781408B391CD1BAABEF269BBF8EB406C6AEE1EF4BBFD'));

Page 73: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('EAAEE1EE682DE871F4A2C32DEEEFC8A037AE722AAEF38EE7B75FF22943FB'));dbms_lob.writeappend(v_lob,30,hextoraw('9EFF00AD1602DEEEFD3EB4BBBDEAA87FA8FA74A037B9CFF9CD202DEE1EB4'));dbms_lob.writeappend(v_lob,30,hextoraw('6EAA9B8F4EBD7A5297FCFA7345865A0FEF46F1EB5577FE3FE7F3A69707BD'));dbms_lob.writeappend(v_lob,30,hextoraw('005BF3293CC1C8AA9BC77FD699B86074E3A7F2C51602EEFF00A8FAFE34C3'));dbms_lob.writeappend(v_lob,30,hextoraw('275E4D51DC739C90076E0E7F1EA28F331C13D3D4FE74580B8653CFF414DF'));dbms_lob.writeappend(v_lob,30,hextoraw('37FCF1553CDFF23FFAD51197DFFCFF003A00BAD2678FC29A641D6A834AB9'));dbms_lob.writeappend(v_lob,30,hextoraw('EA79E7BD33CEC77C7F2A63B174CA738E2A3794038CF1D7BFFF00AAA834DD'));dbms_lob.writeappend(v_lob,30,hextoraw('4E4FF9FAE2ABBDC7079EBC606680469B4FD79C7D39F4AAED3FA1E33DCF3D'));dbms_lob.writeappend(v_lob,30,hextoraw('FDEB35AE075047B107FC3FAD547B8F4C9FE9EBD39A00D47B8C77FE7FE7AD'));dbms_lob.writeappend(v_lob,30,hextoraw('5392E0F3839FAF4C5663DCE33F31F5EF9FAF4C55392E3AF3DFBE7AD0348D'));dbms_lob.writeappend(v_lob,30,hextoraw('292E7D49E7B71DF1CE735524B8E38EFF00E7D6B31EE09EFCFB13EDEB54DE'));dbms_lob.writeappend(v_lob,30,hextoraw('E0E396C7F5FAFE34AE558D27B924609391EFCF1939AA52DD7DEF9B9F4CE6'));dbms_lob.writeappend(v_lob,30,hextoraw('A83DC1E724119E3B1EDEDEDC551966073F3118C7193DBF0A571A45A9AE47'));dbms_lob.writeappend(v_lob,30,hextoraw('F7BDB8CF5ED58F7171DB7118E78E38FD453259B8FC7F4FF0359B2CA707A6'));dbms_lob.writeappend(v_lob,30,hextoraw('3B73CF352D969115C4E5B201E33EBFA7F9CD615D32C88F1CAAAE846D21C6'));dbms_lob.writeappend(v_lob,30,hextoraw('7F9FBD5E998907BF4FEB5952AB738E9D463FCFA5272EF62D24CE3750D020'));dbms_lob.writeappend(v_lob,30,hextoraw('7264B27F21CB13B093E5F7E38C91CFD6B94BAB1BCB6C89620EA3F893E643'));dbms_lob.writeappend(v_lob,30,hextoraw('F5047AFEB5E93229C9CFD49FCFA552917A820107B71DB07A56524BB1A294'));dbms_lob.writeappend(v_lob,30,hextoraw('E3D6E8F31658F3CA321F6E3A9C7E75118FA6D90E31DC1E9F811F8D7A0CD6'));dbms_lob.writeappend(v_lob,30,hextoraw('56B2677C09E9C2807F3EB59B268D68C7E5DC9F4F43F91A8E5B5ECDFE657B'));dbms_lob.writeappend(v_lob,30,hextoraw('4EE97E471FB5C631201D31F31F7F634A1EE063F7A7073C076F4E3D2BA56D'));dbms_lob.writeappend(v_lob,30,hextoraw('0D3F8653EC0E7DBD3350FF0061B64E255E38E7208F6A5663534B557F3D4C'));dbms_lob.writeappend(v_lob,30,hextoraw('2DD31C665CE3B6E6F6A4018E49933CE7939FE7ED5BE344F5997039E87E9E'));dbms_lob.writeappend(v_lob,30,hextoraw('953268D10EB29FC17FC727BD3B30E78E976FEF39C19EBC9FD3FF00AF4A14'));dbms_lob.writeappend(v_lob,30,hextoraw('9E15777618E7DEBAC4D2ECD3EF02FF005C55B4B7B58FEE431EEFF741FE74'));dbms_lob.writeappend(v_lob,30,hextoraw('B95873A5B27B7E7EA729058DCCFC08D88F5EC3FA56B41A2104199D07B2E5'));dbms_lob.writeappend(v_lob,30,hextoraw('8FE640FE75BCA7D0631E9C0FD054C80B633FE7154A2BD49736F6FEBE657B'));dbms_lob.writeappend(v_lob,30,hextoraw('7B4820C7971AEEFEF360B7F87E55A68849F5A238C7A0F4FD3F3ABB1C78ED'));

Page 74: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('9C0EFEF83FE7915497621B6F7DC7C31E7D88207F9E2B522503071DB1CD57'));dbms_lob.writeappend(v_lob,30,hextoraw('8D703DC7F9EF57631F419F4F5AB4896CB917183DB1FE3F855F46200C6074'));dbms_lob.writeappend(v_lob,30,hextoraw('F5FF003DEB394FA373FE78FAD5A56C72491C11FE4D52D88FC0D14908E3AF'));dbms_lob.writeappend(v_lob,30,hextoraw('E1EF53A499EC077CFF002ACF46E73BB39E79E47FF5AA70CA3D3FCFA0C530'));dbms_lob.writeappend(v_lob,30,hextoraw('B1A29211D793FE78A78B80ADC9C91FCBD0E2A806E9E9EC714E0FCE0E0E7F'));dbms_lob.writeappend(v_lob,30,hextoraw('1FCE9058D559C71824F5FF001A984DF5E7D3FCE6B2558FB73DC71D7D3E95'));dbms_lob.writeappend(v_lob,30,hextoraw('207E0751EE0FF93D281DBF33544C7A64E7F9FE1DAA559F9C139EA7EB594B'));dbms_lob.writeappend(v_lob,30,hextoraw('28CE327F1E99A7F99919279C7A9A2FA2158D859C03FCBF2C773532DC0E84'));dbms_lob.writeappend(v_lob,30,hextoraw('D622C87D791D7BD3FCF24FF9FF003DE9DC4D1BAB3E4F7C0E2AC2DC01EBFE'));dbms_lob.writeappend(v_lob,30,hextoraw('73DAB01251D33D78E7BFBD4EB37BFB77C7F2A2E2B58DD4B8FA67BD5A5B81'));dbms_lob.writeappend(v_lob,30,hextoraw('9C66B9D1301DF1CE473F9D5859F3820E3EBFFD634EE4DBF03A059FA107F3'));dbms_lob.writeappend(v_lob,30,hextoraw('F6FC6A649B3DF15CFA4FCE33FE7F955A13E067391F5FE54EE163744CBC13'));dbms_lob.writeappend(v_lob,30,hextoraw('CE2A5137F2F5F7AC349F279EE3BFF33DEA7128E80F27FCFF009E68B89A36'));dbms_lob.writeappend(v_lob,30,hextoraw('96627BF1EB8A944A7F4AC64978183EDFE4E31532CC7904FF009C0A64D8D5'));dbms_lob.writeappend(v_lob,30,hextoraw('127BD3BCDC11FD3E83FCF359EAFC7269E24CF03345C0BC1C93D7AFA54AB2'));dbms_lob.writeappend(v_lob,30,hextoraw('7D6A807A50F93D69FCC468EF3EB416F7E6A8EFF7A7092802E6FCF14E0D8C'));dbms_lob.writeappend(v_lob,30,hextoraw('5521273CD3B7FF009347908B7BCD287E39C9FA554F347AFE1D7F1A04AB8E'));dbms_lob.writeappend(v_lob,30,hextoraw('BFE7F9D303577FBE7F2A5DE3F4AADBBFCF4FD294B9E3FAE68116449EFDA9'));dbms_lob.writeappend(v_lob,30,hextoraw('4483D715577E3BFE38FF0026977104E4FE79A00B5BCFA9A76EFAFE355038'));dbms_lob.writeappend(v_lob,30,hextoraw('F5FF001A6971D8FF009FCE8B0CB9E611CF27E9CD344BC9E4F63EDF8554DF'));dbms_lob.writeappend(v_lob,30,hextoraw('D79E3FAFE149E67A92793CE7DFFA521970C9DF3FE7F0A6993E86A919093C'));dbms_lob.writeappend(v_lob,30,hextoraw('1C751F8FE7419074CFE64D3B0168C9FAFAFF00F5A9864FAD54328F61F5E3'));dbms_lob.writeappend(v_lob,30,hextoraw('EBD4FF003A89A520FDECE39C67B7E7480B8643C739EDFF00D7EB485C7F78'));dbms_lob.writeappend(v_lob,30,hextoraw('8238F6FF001AA2D2F07F2E738EF51B4C01F5CFBF7ED8079FC29817FCDE31'));dbms_lob.writeappend(v_lob,30,hextoraw('FCFA544D3738CFE3E9FE7DEA8998F7207D7B7F9FC6A1328393B81CFF009E'));dbms_lob.writeappend(v_lob,30,hextoraw('E290CBC66F4C9F7FA1FAD4266C73D7E9E871D39AA2D28E79E327A71F8F4A'));dbms_lob.writeappend(v_lob,30,hextoraw('ACF38FEF7E592281D8D069C6719CFF002FE754DEE3927B74E3B74E2A93CF'));dbms_lob.writeappend(v_lob,30,hextoraw('9EFD0F5E6AA3CFC9E4D2B8D22FBDC03DCFD78CFEA6A9BDC1C7A823D718F4'));

Page 75: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('E2A8BCDFED303D3AFF009EF555A6F46209E79C7F414AE3B179A7E7F8BF4F'));dbms_lob.writeappend(v_lob,30,hextoraw('E84D5779BD370EA3B76F6AA0F31C6793DF93FE3555E619C83B7BE707191C'));dbms_lob.writeappend(v_lob,30,hextoraw('FBD2B8ECCBCF373D7AFA9FA77FFF005D5379BA9E71DF278F7AA8F3161F2B'));dbms_lob.writeappend(v_lob,30,hextoraw('1C9E73CF3E8075EF559A552739E4E491CFA8FAD26CB48B4F3904637119E9'));dbms_lob.writeappend(v_lob,30,hextoraw('C74E7FCF7AA724DCF6EDD49FEA7FFAD5034A0F19271D073E9FE7AD567727'));dbms_lob.writeappend(v_lob,30,hextoraw('B903A1FE7F4A4DF62ADFD7CC959C1CE7A67D38AA2EDCB77CD3989F7CE7E9'));dbms_lob.writeappend(v_lob,30,hextoraw('FCEA0739EBFCFF000EE6A58D7E25790FB938FC7F95537C9F7E33FE7FFD55'));dbms_lob.writeappend(v_lob,30,hextoraw('69FA9F5C773FD2AB3E0F7C73E87BF4EBEB48A5F229489938C633D3FC7F2A'));dbms_lob.writeappend(v_lob,30,hextoraw('A72443D0F1F9FA64568B8FAFA71F8F6E6A0751CF6FF3F8D2D0A325E23FAF'));dbms_lob.writeappend(v_lob,30,hextoraw('F4FF001AAAD19F4E9FAFF3AD7741EBDBA75FA7E42AB3276C0FFEB678A56F'));dbms_lob.writeappend(v_lob,30,hextoraw('98BC9994C8DF4C8F7A84AB0FFEB75AD568F3DBF2FAE6A030E7FC8FC2977F'));dbms_lob.writeappend(v_lob,30,hextoraw('20FC0CEE47B71DC51926AE7919C641E3FA7FF5E9C2DB1D47F93408A233FC'));dbms_lob.writeappend(v_lob,30,hextoraw('CFFF005AA5504E382715716DFDBF2C7E7CD4CB0638C73CFA639A3A88A888'));dbms_lob.writeappend(v_lob,30,hextoraw('4FFF005AADA29FAFF9FA54E9063A0E7DBFC6AD245EA3AFF3AAB7905C8635'));dbms_lob.writeappend(v_lob,30,hextoraw('C75FD79FE42AF46318EBD3D3EB42C43A7F33C558543C71FAFE5DE9A1587A'));dbms_lob.writeappend(v_lob,30,hextoraw('2919CE07F9FCF9AB4A0FB7E79E2A25079E9FD7F3A9D463B1C91F87B7534E'));dbms_lob.writeappend(v_lob,30,hextoraw('E2FEBFA64E99E9E9E95383F99F5E86AB2D4CAC33C039CFD29DC56FD0B2AD'));dbms_lob.writeappend(v_lob,30,hextoraw('918207F9EFC7D2A5FC463A75E3FF00AF55D48CF3C77FF1E9DA9E1BDCFA71'));dbms_lob.writeappend(v_lob,30,hextoraw('4F61DBF12C64F4DDC7FF005BDF8A9370C7DE3FE7F0F4AABE66DC771CFF00'));dbms_lob.writeappend(v_lob,30,hextoraw('9F5C53B7A9E83D0FB7AD2BFCC0B41B1CE73F8D4824FAFE3FD7FAD530F9E8'));dbms_lob.writeappend(v_lob,30,hextoraw('723AF1DFA74A78639E00E39E9F87D3A53F5EA05B0E0E7914EF338EE47AFF'));dbms_lob.writeappend(v_lob,30,hextoraw('00FAAAA07CF4E7F5E9D7B53812476F4A3D40B3E6E0FF00FABD7AD48241DC'));dbms_lob.writeappend(v_lob,30,hextoraw('F707D3B75AA791EBD31FE7F2A70231CFF9FD680B22F2C8A79EBFFEBFAE3E'));dbms_lob.writeappend(v_lob,30,hextoraw('9530947AF7EFEDED59BBC741F5E681267D3278E7F9FAD1EA2B1ACB283FE7'));dbms_lob.writeappend(v_lob,30,hextoraw('EA71D7FA54EB28C000F18AC65988EFC83FE7B9A91262064E723D3147F9E8'));dbms_lob.writeappend(v_lob,30,hextoraw('2B1B6B2FE1C559597DFF002AC359FA1248FD78A9D6519E1BB74E7FAFBD1A'));dbms_lob.writeappend(v_lob,30,hextoraw('936F237566000FEBFE7F4A984A73C1EFDAB1127F7C9FF3DBEB56566F7FD7'));dbms_lob.writeappend(v_lob,30,hextoraw('B50163692423A9C7E5F855859475CD622CC7D739153ACDCE29DC9B6E6C89'));

Page 76: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('81E391FE7F2A9925E958CB2FBFEB56126E9CFE7557158D41293DFDBF4A94'));dbms_lob.writeappend(v_lob,30,hextoraw('3F1C1E6B34483D7AFA54A24F43D7FCF5A2E2B178487DEA4121FF00F5D510'));dbms_lob.writeappend(v_lob,30,hextoraw('FDF26A40FCFF008D3B88BA1F3DE8DE3A66AA6FF7A5DE3FCFF9F5A77158B5'));dbms_lob.writeappend(v_lob,30,hextoraw('9E99E94F561F95550FC7AFF9E69DBF3DF8A05B1AC1CF7FAD3B7FAF6FE755'));dbms_lob.writeappend(v_lob,30,hextoraw('37E33F9FF9E68F301F6C7BD508B5BFDFA52F99EFFAD53DFF008FD7F952EF'));dbms_lob.writeappend(v_lob,30,hextoraw('1D73DFB7F8500592FDF8E7D4FE7407279E9DBAD532FF00ED1C75FF003834'));dbms_lob.writeappend(v_lob,30,hextoraw('DF339FE2CFFF005BEB4865C2E47519FC69A642077E3DF39FD2AA34A7F9FF'));dbms_lob.writeappend(v_lob,30,hextoraw('009ED4D2FEFF0037B7F9140CB5E613DBF5C534CA0753CFE7C7F2AA65BF5F'));dbms_lob.writeappend(v_lob,30,hextoraw('4EBF89C54448CEE3D47033CFD6802EB4A3AFB67BE3A545E60FEF03DBD3F9'));dbms_lob.writeappend(v_lob,30,hextoraw('F3550C9DF9C93FE79CE69864CF51DFD7D3F1A432D9947D3B7F9E4F6A84CD'));dbms_lob.writeappend(v_lob,30,hextoraw('9F7E09FF0039AAAD37419E0FBFF4355DA72338CFE3E9F4CD1702E34C79C7'));dbms_lob.writeappend(v_lob,30,hextoraw('5F7233D33E86ABBCDE83FCF3EE2AA34F8EF838FC2AAB4F9CE5BBE39FC7F1'));dbms_lob.writeappend(v_lob,30,hextoraw('A572AC5C79FF00C7E9C8EC3D38AACD37B919FC7D7E9555A604819F53DFDC'));dbms_lob.writeappend(v_lob,30,hextoraw('640AAAD37539EFD39E3EBCF14AE558B6F3E3A83D7AE7FA62AB3CC0FAF1EF'));dbms_lob.writeappend(v_lob,30,hextoraw('91FF00EBFC6AAB4FEE07AE09E7F5C555798633DB81F8D2B8D22D49313D0E'));dbms_lob.writeappend(v_lob,30,hextoraw('473DFD3F0CD5392627D87A83F5ED551E7381F31279FBC7EBEFFE73559E5C'));dbms_lob.writeappend(v_lob,30,hextoraw('F009041E0903FA6690EC5979DC67E604F4C6EF4CF3F4A81A5279EA0FBFF2'));dbms_lob.writeappend(v_lob,30,hextoraw('EBEFCD567727AE30413FAE3D735097EC72467A11C76EC7FA1349FE255B52'));dbms_lob.writeappend(v_lob,30,hextoraw('D3499E9F5F4FAF1D3F9542CC48E98F71C638AAECE0F3C74F527D3A76EF4C'));dbms_lob.writeappend(v_lob,30,hextoraw('69073CB9E9EA07028D7FAFD07F81316F53B8FB67AF7C9CD464F6E3EBE9CF'));dbms_lob.writeappend(v_lob,30,hextoraw('A66A31275E0FF3EE7D6A32FE993DFD38E3DA97F5E41FA8E66F7EFF00407F'));dbms_lob.writeappend(v_lob,30,hextoraw('3FFEB540E49E31CFE1F5A7120E4E39CFA0FE44FB546C73DFF9FF0091487E'));dbms_lob.writeappend(v_lob,30,hextoraw('631FE87F3FF1A85B07FC29CE4E06077E793F8D447D41C7E748A232B9EDC7'));dbms_lob.writeappend(v_lob,30,hextoraw('B8EDFCAA161E873E9C7F93560A8E3273C7E7F9D30AE7B67B73D71DBFCF14'));dbms_lob.writeappend(v_lob,30,hextoraw('6EC68A657271C038F4EF9FA7BD31A3183F5C7D3FC9ABA53D00E9FE473D29'));dbms_lob.writeappend(v_lob,30,hextoraw('BB40038CFF009FAD20287920F2723E9FFEAE94C30FB678CFE7CF5E95A253'));dbms_lob.writeappend(v_lob,30,hextoraw('D063F0FAF6A4D9F5FE9F9734583EF2879591D3AF1FE34A2107D3AFE1EBD7'));dbms_lob.writeappend(v_lob,30,hextoraw('A74CD5FF002C74E073FD3E94A10771C1F4FEB45856290871D47D38E7EBDF'));

Page 77: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('B548B0FA76EBC7F9E6AE08F18E33FE7E99A78419E38FE74FF10D0AAB17B7'));dbms_lob.writeappend(v_lob,30,hextoraw('F9FF003F5A9963F63F8F3ED53841DF9EC7EB8FF39A9157F9FF009E734088'));dbms_lob.writeappend(v_lob,30,hextoraw('846003C7F9FF003E952228E39EFD0FE35205F4238FAF1EB5201D08E3B7E3'));dbms_lob.writeappend(v_lob,30,hextoraw('FA53EE2183E83D38FCBEB5281F51498E7B71EBF9F7A7838ED9E3F2C1EDC7'));dbms_lob.writeappend(v_lob,30,hextoraw('146E1F70A001D0F6EC3FCF4A7F0071CF7FF3CD3411D7A700907FA7F3A770'));dbms_lob.writeappend(v_lob,30,hextoraw('78239E9FFD7A62EE283C7BFD29CA41C9DDDFA7FF00AA9B8CF23F4FE751AC'));dbms_lob.writeappend(v_lob,30,hextoraw('603EE1DBDF8EFEF9A365FF000C0583CE3F23F4A70C8E09CFA7A543D49EBF'));dbms_lob.writeappend(v_lob,30,hextoraw('8F4A7838EFEDFE3405C9C363AF6FF3DA8DC01EBFE27EBCFF004A879CF41F'));dbms_lob.writeappend(v_lob,30,hextoraw('8FBFF8D182472783F8FE98A10762C6EC74FD3A1F4EF49BBEA7FCFE550EE2'));dbms_lob.writeappend(v_lob,30,hextoraw('0E074CF53CF1DE94393D79C7AFF8530E84FB89C738EDD4FB75A7838CF24F'));dbms_lob.writeappend(v_lob,30,hextoraw('355F70EB8FC78CF140607E9EFEBEC7A5205B16B77503273C7A7F3F7A030C'));dbms_lob.writeappend(v_lob,30,hextoraw('F6E38E3EB55B79E467FC3F4A3700463279EDCF3D4F3D690EFA16831E7A73'));dbms_lob.writeappend(v_lob,30,hextoraw('F8741FA53C30C641FCFF00CF4AAA0F419E3927DEA40D8F51DB03FCF6AA17'));dbms_lob.writeappend(v_lob,30,hextoraw('75DFBFF5DCB2B211F9F43F977F5A9C3E3073CD67F5EE4FF8FE1520627FCF'));dbms_lob.writeappend(v_lob,30,hextoraw('BD00D1A6B2F3D73CFAF6AB0930CF07FF00AFDFBD630931D339FF00EBFE9C'));dbms_lob.writeappend(v_lob,30,hextoraw('D4AB21E0668158DD59BF5153A4D9FF003FCB8AC68E5E39279FF39E6AC24B'));dbms_lob.writeappend(v_lob,30,hextoraw('D8F1FD6913636524C9ED823BD4EAFD39FF003D2B1D66C0EA7DBB7F9C55A4'));dbms_lob.writeappend(v_lob,30,hextoraw('9BDCE7AFF9E69DC2C6BACA3F2F5A944BFCF1592B363F4FEA2A559493919C'));dbms_lob.writeappend(v_lob,30,hextoraw('7D7AD3B93635965FE7FCEA412E6B3164EFFE7F9D4AAF4EE2B1A2AFF87F5A'));dbms_lob.writeappend(v_lob,30,hextoraw('93774C77AA0B276FA0F7A93CC18CF3EF4EE4D8BBE66053F7FA5511271FE3'));dbms_lob.writeappend(v_lob,30,hextoraw('4F0F8C734C56360371E9F5A4327BFE5FD6AA17F7FE7CD2F983B67D3AFF00'));dbms_lob.writeappend(v_lob,30,hextoraw('9E6AC82C97EDD87F914864C7E1553CC3CF26937F7273DFD281965A4C8CF4'));dbms_lob.writeappend(v_lob,30,hextoraw('C71C7149BF017BF18EBD6AAEF3FF00EBE691A41F80F4FF0038A43FD0B264'));dbms_lob.writeappend(v_lob,30,hextoraw('E7AFF9E94C32633CF7FEBD3BD553275C9E7FCFBD465BDF1FFD6EB4016CCB'));dbms_lob.writeappend(v_lob,30,hextoraw('EDFE1FE7150B4C40C7AFF93FE7DEAAB49D473C7AFEBD4D445B8E7F2FF27D'));dbms_lob.writeappend(v_lob,30,hextoraw('690CB666CFE5EDFF00EB35134C7AF27B63D7F2E45542F8F6FAFF004C540D'));dbms_lob.writeappend(v_lob,30,hextoraw('2919F9876E87E9EFE9498CB2F3138EDC8E87A6392327E950BCF8C8207D73'));dbms_lob.writeappend(v_lob,30,hextoraw('EB551E6C8EFF00D3A7BF5E3350348304E7FCF6A571FE3FD6A59926E723F5'));

Page 78: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('271555E4CF5E3BF07FC3D6AABC83919C7D339F5EC73D6AAB4A7FBC0919FD'));dbms_lob.writeappend(v_lob,30,hextoraw('7B52BFFC02D22E34B91D7B63AF3F91AACD3F2707B743823EB555A4C7396E'));dbms_lob.writeappend(v_lob,30,hextoraw('3A74FE8735559CFAFE79CE7EB52D94A25B69C679CAF39FC3F2AACD2F3C75'));dbms_lob.writeappend(v_lob,30,hextoraw('F4EBF9718CFA5572FD39FCBE6C76C1AAED23678C75FE2FE7C522AD65B139'));dbms_lob.writeappend(v_lob,30,hextoraw('7F53839C9E483D7F5A83CCE0939233CE78C7D715197DDDB1DBBFE1D6A22F'));dbms_lob.writeappend(v_lob,30,hextoraw('FCBB0FCE987CC98B0FD7FF00AFF9544F2EC031C924000904963FFD6A8F7F'));dbms_lob.writeappend(v_lob,30,hextoraw('A0C0FA7F3A87073967662BD8F0A3A8C0E8290160B7E44638C7E7EB49D390'));dbms_lob.writeappend(v_lob,30,hextoraw('7DBFC8A8CB28EFF960F5FA7F8D349C77E7AF3E9F5FA5003F3F439F5FC4F0'));dbms_lob.writeappend(v_lob,30,hextoraw('49F7A66EEB9C1EDEBFD293773FE4FF0085377E49C0C7D3A9C7BF4E297C81'));dbms_lob.writeappend(v_lob,30,hextoraw('09BBBF4FA74FF1EF48791EDFFD6E7EA29D9C7F77FC9F6F7A6E01FCBF1F4A'));dbms_lob.writeappend(v_lob,30,hextoraw('0A1A718C939E9D00A6606476FF003C67F9D4981DBF4F97EBD3DA8DBCF407'));dbms_lob.writeappend(v_lob,30,hextoraw('E9F852022207383D7FC334983D0E31EC3FCF7A9703F9F43ED4DC139E33C9'));dbms_lob.writeappend(v_lob,30,hextoraw('F5A008B03BF1F99CD1B41EFF00E47BD3B200E9D077CFB71FE452F207233F'));dbms_lob.writeappend(v_lob,30,hextoraw('4CFF002F7A63DBEF23DB8EFDBB1FF1A4DBCF7FF3D6A4CF1F28FE9F95380E'));dbms_lob.writeappend(v_lob,30,hextoraw('7A7D7BFF00F5E907E0458CF4FC85285EFDFD3FFD5536DE3F2CFF00934053'));dbms_lob.writeappend(v_lob,30,hextoraw('E8318EFF00FD7A05F811F7C63F2C9A5E9DBA8FFF0057E3526077F4FF0027'));dbms_lob.writeappend(v_lob,30,hextoraw('A5380C1EFF008FD31402634640CF1C81D7A538608C93C1E463F2A5DA3BFA'));dbms_lob.writeappend(v_lob,30,hextoraw('FF009EA7D334A00038C74C7B502107F5A900031D7F1A4C9FFF005F4C73EF'));dbms_lob.writeappend(v_lob,30,hextoraw('4F1F9E719FFF005530EA18FA1239FE74A17F1FA76FC8503A7F9F5FE94EC7'));dbms_lob.writeappend(v_lob,30,hextoraw('E279ED9FC2810C1E9E9FE7AFD29E17B0FAD04E4FA01FE4D2E318E9C0A686'));dbms_lob.writeappend(v_lob,30,hextoraw('0323F0FF002682DDF1CF7F43C9C76A320F61939FC7D7AD0307AF3FE7FCF6'));dbms_lob.writeappend(v_lob,30,hextoraw('A7F7E82DF6B8D2E3AF52697764F707A73FD297DFFCF3F8D1EF819A402E73'));dbms_lob.writeappend(v_lob,30,hextoraw('D7B1FE5EB4EC918ED9F4FCBD693AFD7FFAF484FD7F3FA7BD01F21F9EFF00'));dbms_lob.writeappend(v_lob,30,hextoraw('87249FD33487EBE9D3A75A4EBEDC7E38A391D09FF3C53014700F19C0FC3B'));dbms_lob.writeappend(v_lob,30,hextoraw('8A3D33FCFD299C9E391FFD6A5CF4E7247F93407E571E727804F3DF9FFF00'));dbms_lob.writeappend(v_lob,30,hextoraw('55341238E08F6FF39A6313C631FE7F0A50C49EB9079E9480981207F9FD69'));dbms_lob.writeappend(v_lob,30,hextoraw('FBF18FEA7FC6A00474FF00269D9F7FE5DA8F50EA4FBF3DBD87F3F61DA94B'));dbms_lob.writeappend(v_lob,30,hextoraw('E38FC39E3A7EB55F39E9C7207F3E94BB89C7273FFEBA045A0C3AFF002EBF'));

Page 79: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('CBB53D5FF03FCBDBF4AA609FF3C8A782477E7FC0E28F540CBA1FDFBE38FF'));dbms_lob.writeappend(v_lob,30,hextoraw('003EF5615FD49E7DF9ACD5C9C73EFD49C7E9F9D48AE71D4FE67F9FFF005E'));dbms_lob.writeappend(v_lob,30,hextoraw('81AF3B1ACB27A1271FD3F5AB2927F2E3FCFE59AC8573D3F9FD381F9D5949'));dbms_lob.writeappend(v_lob,30,hextoraw('47D3FCFF00F5AA7B035E86B2C87DFD2A757E39FA565AC83D7F2E3D7DB8E2'));dbms_lob.writeappend(v_lob,30,hextoraw('AC2C9D067DB8FA5325A34D5FFC9ED53AC9D0647F2ACC1263BF6FF1A9849C'));dbms_lob.writeappend(v_lob,30,hextoraw('F5CD55C9350383D7E952071EF59CB254824F7FF3F85344B4686E1FAFB53C'));dbms_lob.writeappend(v_lob,30,hextoraw('38F5FD6A887E3FC3FAE69E1B1DCFE7E954268D70E7A76A4DDEFF00CBDEAB'));dbms_lob.writeappend(v_lob,30,hextoraw('6FCF4CFAD1B8FF009FCEB4332C6FF5269A5C639E7F4AAC5F1D3AF6A617C7'));dbms_lob.writeappend(v_lob,30,hextoraw('5CE7AD21D8B45F8E3F5F7F6A6993D87BFF008D562F8E73FF00D7151993EB'));dbms_lob.writeappend(v_lob,30,hextoraw('FA8FEB4AE0592FF97F9CD46CE7FCFF009F5AAC64233D7A7BE3A706A3329F'));dbms_lob.writeappend(v_lob,30,hextoraw('AE3BFBD2289DDFFCF5FF003D2A2690FE9F4155DA523BF5F7FEA79A81A5C9'));dbms_lob.writeappend(v_lob,30,hextoraw('3F31EDF4F5ED45C1161A4CFB73EA7FCF7AAED201DF23DB9FD31503C9EE7F'));dbms_lob.writeappend(v_lob,30,hextoraw('3C55779BD0F4E39F7A43489DE4EB86E33D7FA73C75FA55379B0BC73DBA93'));dbms_lob.writeappend(v_lob,30,hextoraw('CFBFD6A279B1D4E4E3B0E39FAD547981CFDE3EE7DBA7F9C54BFC0B48B0D2'));dbms_lob.writeappend(v_lob,30,hextoraw('E7B8CF5F4FE593DEABBCB9FC3DFE98E71D38AACD2F6CF1F523DEA167E491'));dbms_lob.writeappend(v_lob,30,hextoraw('C7D3D3A63AFF005A4D94913348723383F5FF001A8998F507DB9F5FA541BF'));dbms_lob.writeappend(v_lob,30,hextoraw('A93C76FEB4D2C723AE3B6EC54F62BFC890C878EB9CFF009E6A36901EC411'));dbms_lob.writeappend(v_lob,30,hextoraw('DF3C7EA2A367E98E3FCFB530927FC7F0FCA98AFF003D0796CF5C9F6CFF00'));dbms_lob.writeappend(v_lob,30,hextoraw('9EE69B9EF9E0F3CF5FE5FD2A3CFA63E839A4278E307A741FFD6A1FA079F4'));dbms_lob.writeappend(v_lob,30,hextoraw('1E4F6C7F8FAF18E4E7F0A69CF1C7239C13FE1516EEBF2851FE7A7F852FE2'));dbms_lob.writeappend(v_lob,30,hextoraw('C4FD7A7E278A3F32871F70DDFDE81E9C6073EF4CC1E8718CF6E83D683838'));dbms_lob.writeappend(v_lob,30,hextoraw('E9EFF963AF5A417063C8F9793C820FD29579E78FE47F9D37BF191C7B9FA5'));dbms_lob.writeappend(v_lob,30,hextoraw('2E3F13D0F6E9FAD01DC5F5EF93E9DF8EFF004A3E6E0F183CF7A39EFC639E'));dbms_lob.writeappend(v_lob,30,hextoraw('7A546E4E09E9839E3AFD2801E08C9C71DB9E466939EBD4FB7F9FE74839E7'));dbms_lob.writeappend(v_lob,30,hextoraw('8E7F43CD2F5EBDB8EF9CF19EB4BFE00073DB9A6E483D33D7FCF734FF0063'));dbms_lob.writeappend(v_lob,30,hextoraw('F4E7FCFF009347EBF5E3BFD314FC9811E07707AF6FCFFF00AF48C4E7038C'));dbms_lob.writeappend(v_lob,30,hextoraw('67FF00ADD4F352600E7FCFB5275EE0E78E7FC3B7FF005A801858E70303BF'));dbms_lob.writeappend(v_lob,30,hextoraw('4A0003AE493E9C6307E94EDA3B71D79FFF0055382FD4FD7F0F5FE748634E'));

Page 80: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('7FDA1EB83F4FAD28270091D7D7AFBFF2A3181CFBFF009C0A5C639CF7CD1A'));dbms_lob.writeappend(v_lob,30,hextoraw('8851CF53C81CFF00FAFAD19C63238CFEBED40039E78F7FE54BB7B6727F4F'));dbms_lob.writeappend(v_lob,30,hextoraw('E5405D0BF91FF38A518EBB87E1498CF71F89CFF4A5FE9400E18CE3F2FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('39A39F6FC0520C75C743F974F7A5EBD323B5301C323A118F7F5A786E9C01'));dbms_lob.writeappend(v_lob,30,hextoraw('EB5163B720FB53801DF079EBF5F4C7B50BCC43CE09E7278FD6978FD299C0'));dbms_lob.writeappend(v_lob,30,hextoraw('27FAD29CE3AFF9FF003ED4C3B8BDF900FF009E9FE4D1BB183FCFF3FE74CC'));dbms_lob.writeappend(v_lob,30,hextoraw('907B934107DC7FFABDA90C7E73FE7A7F851CD307A13EFCFF00F5E9DD3DF3'));dbms_lob.writeappend(v_lob,30,hextoraw('4EE21D9183DFB77A66493F53FE23EB4DEA71F8714A38F7FF000347E7F201'));dbms_lob.writeappend(v_lob,30,hextoraw('F9C73FCB1FCE97271FD7F5F4A8C1CFE39FC3B53BF1EBFE1F4A2F70EE2162'));dbms_lob.writeappend(v_lob,30,hextoraw('3AFE7481893E9FCA90919231CFE7CFF3A5C0F6E78FD3F3A4029E73E9FAF1'));dbms_lob.writeappend(v_lob,30,hextoraw('CD00800E075EDF8F51934DDA739C9F7FE42819F4FEBCD3B80F0D8E48FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('3DAA4C83C11C7F85427B7247F87F914A0F3C67BFAD0C3EFF00F862618F5A'));dbms_lob.writeappend(v_lob,30,hextoraw('4C8F5F7FF38A88BE33DBFCFBD01B3919F6E4FD7BD1A7DE04BBBD09A7649E'));dbms_lob.writeappend(v_lob,30,hextoraw('87BF6FA7B545BBF1EDFF00D7FCA941C77EDFCA8BA0FC89C37D3FCE69FBC0'));dbms_lob.writeappend(v_lob,30,hextoraw('C6319FF3E955C13D8F1F8F5F7A07D4FF009FC7FA502FD4B824E7FCFA54AB'));dbms_lob.writeappend(v_lob,30,hextoraw('27D7D3F3AA3BBEB9C66A40C78F6FF3F5F4A56FC869FA1A4927D4FF008558'));dbms_lob.writeappend(v_lob,30,hextoraw('493A5652CBC9C8E38C66AC2B720F4F5FF3FF00EAA43B686B2BF4C9F5EFEB'));dbms_lob.writeappend(v_lob,30,hextoraw('53ABF4FCBD2B2D64EE7FAFB7D6A7128C1CFA7E34C968D457F5FD2A40FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('E79ACE494F1D7D3F5AB21C7B1FF3EF4EE4B8F7D2E5E5623AF3F43528931F'));dbms_lob.writeappend(v_lob,30,hextoraw('FD6FF0AA21FB7E35206CFF009FC6992EFD8D72E33CE31F9FF4A42E38EDCF'));dbms_lob.writeappend(v_lob,30,hextoraw('F9EF506F1C73FE1FA530B8FF003FE735B191317EB8CFE1FF00D7A6B39C70'));dbms_lob.writeappend(v_lob,30,hextoraw('7A7F5FFF005D425C75FF00EBFEBC7AD44CFF00E47E3487A226331F4069BE'));dbms_lob.writeappend(v_lob,30,hextoraw('675F5A837E0771EFFE4D465FAFFF005BEBEB48098CB804F4E3E9FE350997'));dbms_lob.writeappend(v_lob,30,hextoraw('3D33C71FCBFCFE15033E78ED9CD445BD0E31C75E3F97A522AC4E64232300'));dbms_lob.writeappend(v_lob,30,hextoraw('F3F8FF00FAB9A81A53FDDCFE59EBF85577723F9FAFE9503381D3079FAFE7'));dbms_lob.writeappend(v_lob,30,hextoraw('48AB133CA720F61DBFCFB555924E3AE38EA3BF6FF3C546F2772467A0C67B'));dbms_lob.writeappend(v_lob,30,hextoraw('75AAAEFD7E6FCFDCD276F9956EE4ACE7B1273DF3F8555691B3C1EF9FA7FF'));dbms_lob.writeappend(v_lob,30,hextoraw('00AAA3326793C11FE735117F4E7039C8A577F328919D8FA7E7F5F7FF003D'));

Page 81: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('2A32FDB041C1FF0039A6673D0FE78EB9FE54CDC3A1CFAFE5F53486484E32'));dbms_lob.writeappend(v_lob,30,hextoraw('73FCBF3A633648E4E0FE9DFD298CDEDF5FAFE74CE79E49CFF9F5FD28063C'));dbms_lob.writeappend(v_lob,30,hextoraw('B73DC81EB834CDE3D40CFF00F5E933F4FC3BFE1F4A66FF00607078E7FA7F'));dbms_lob.writeappend(v_lob,30,hextoraw('8D1A8BFCFF0021C1BF3CF6E3D31CD1EE403FE3C73D2933823D7E9FFEAED4'));dbms_lob.writeappend(v_lob,30,hextoraw('0E9C019FA9CFF3E7140FA875C8EA476E0520F4CE31CF3D80A5DC3A73FE7D'));dbms_lob.writeappend(v_lob,30,hextoraw('F8A68E07BF5E7B7FFAE80DBBEA293C7439FD0FF9FC29013EC3923A0CFD3D'));dbms_lob.writeappend(v_lob,30,hextoraw('6938F7FC7FFADFCA9C31FAF7F5CD20173CF27BFAF6EDFCE9430C63DBF3FE'));dbms_lob.writeappend(v_lob,30,hextoraw('B4C241C104F3FE7D693B718EBDC91401267F100FBF15131E7006477FF3FF'));dbms_lob.writeappend(v_lob,30,hextoraw('00D6A5C91DF8C74EDFE7147B8C63FCFB7AD001D7A70052E4E3B9C0F61D28'));dbms_lob.writeappend(v_lob,30,hextoraw('E31EFEFD69031CF3823DFF009F4A07F2147FB5F867F5E9ED4E1C0EA0FAFE'));dbms_lob.writeappend(v_lob,30,hextoraw('BDA93F0EDDB1471D71CF7CFF009EB8147E22023B8C63F1FE7401DF38EF91'));dbms_lob.writeappend(v_lob,30,hextoraw('CFE54647F87E9FE149C139FA67DE818EE9D738FF003ED4023FCFE1E82A2E'));dbms_lob.writeappend(v_lob,30,hextoraw('F95F6E839FCEA419C7619FD3BD02F21F91D734718E0F3D7D7BFF00851807'));dbms_lob.writeappend(v_lob,30,hextoraw('BE3A7BE3F1A38C0ED8F6CD0021F6EF4007F03F853BD307DBFC2939C7A7FF'));dbms_lob.writeappend(v_lob,30,hextoraw('00ABDE8013183DC7D07E1E80D3BFCF3FAD193F4FFF0057F9F4A518E80E68'));dbms_lob.writeappend(v_lob,30,hextoraw('0B8A38EA3FAF14A49EFE99E693A73DBA519E9E9FAD1D8351DF4206693763'));dbms_lob.writeappend(v_lob,30,hextoraw('B76EFEBEB4CDDD7DFF005C839A72B83D47F9FA6680177E78C639EBFE14EC'));dbms_lob.writeappend(v_lob,30,hextoraw('FA7E9F5F6A8CEDC7F3C63F5A50463D7F01E9476F501E339EFE9F8FF91484'));dbms_lob.writeappend(v_lob,30,hextoraw('FF009E3E94DEA79CFE18FEBF4A5E33D3BFD680EE3811D71D7D3F9D203EE4'));dbms_lob.writeappend(v_lob,30,hextoraw('669BF4CFAD211D8F5C7F2A7A812673DC1E7FC693BF4C0CD378FC3AF4FEB4'));dbms_lob.writeappend(v_lob,30,hextoraw('74E47A7F9F7A5B7CC2C389FA0F7FF2693238C7F2FF0038A66EE9C7FF00AE'));dbms_lob.writeappend(v_lob,30,hextoraw('807D07E78A1DC0781CFAFD7EB4B8E3F4F7A6EEED8FF0FE7467181D476E28'));dbms_lob.writeappend(v_lob,30,hextoraw('0F4D87027AF1C5192BC1F5C7BFE34DE873FD28DC3FCF4A3F1FEBA00E273F'));dbms_lob.writeappend(v_lob,30,hextoraw('9FD3F9D3093D8F19E9EDF953B20FF2FE74C391C8FF003C77A7F20D3B0ECF'));dbms_lob.writeappend(v_lob,30,hextoraw('D33F5A538E29A07F9FCBB0A79C1FCFFC3DA900BDBDFB67B73F952F5FAFFF'));dbms_lob.writeappend(v_lob,30,hextoraw('00AFFF00AD4C181F4033FE734B9CFF009FAD2B0121E38E9FFD7A07F9FC29'));dbms_lob.writeappend(v_lob,30,hextoraw('9D7BE3FF00AD8FF0A4FA678F4E86AB5B01364F1CE3FCF1FAD00E3F2FF0FC'));dbms_lob.writeappend(v_lob,30,hextoraw('2A024FF9FEB4E193DFD8FE228F2116D5C7B73FCAA75703AF1C7F4F4ACFCE'));

Page 82: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('3FFD5F854CAFFE14AC3BEA682BFF0091532B03F8FF00F5EB383D4C1FD71D'));dbms_lob.writeappend(v_lob,30,hextoraw('3FAD2655CD38DC0F4E99FF003DEA7490703B7F9FE95941CFB9FF003D8D4A'));dbms_lob.writeappend(v_lob,30,hextoraw('AC475FEBF9D34435F7335964E79FA7F9FC6A657F73FCAB2849F5E2A64939'));dbms_lob.writeappend(v_lob,30,hextoraw('1F4FE7542FF2374B7D47F5CD34BFA73FE735117EBDFF002FE74C2DFA7FF5'));dbms_lob.writeappend(v_lob,30,hextoraw('FF001AD4E7B136FC1FF1A617F5FCFB74FCEA12F8E9EBFE351B3FA70704D2'));dbms_lob.writeappend(v_lob,30,hextoraw('7F78D1316F5C67F1E9EDFD6A079300E3B7F88F6F4A88BE3D4E7D3F1FF3D6'));dbms_lob.writeappend(v_lob,30,hextoraw('A2693AE3D7B7F3A3F21A252F904720FB9F7FFEB540CE7A72707DBFCFE94C'));dbms_lob.writeappend(v_lob,30,hextoraw('7933EDEDDFFC31555D8F50783F8F7A5FD7F4CAB1333E33CE3AF527F2E2AA'));dbms_lob.writeappend(v_lob,30,hextoraw('B498CF4EB8E79A8DE418EB8C7BFF002C557698E7A0079FF3D6A5B297CEE4'));dbms_lob.writeappend(v_lob,30,hextoraw('8F2F7CE3EBCFE58AAECE1BB1FD31F96334C6901EF9FCBDF150961FCC724F'));dbms_lob.writeappend(v_lob,30,hextoraw('FF00AA915EA3C9EC08FC33F97151927E847BE0FE7FFD6A613CF0474C719E'));dbms_lob.writeappend(v_lob,30,hextoraw('B46E07DFF1FA1FE74BB0C76EE700E71C71485C71919FAFEBFAD318AF4E7F'));dbms_lob.writeappend(v_lob,30,hextoraw('CFE751E40181CFD7B7D4F7A5FD7F561E9E64A587A91CF4C8C1EBC75A613D'));dbms_lob.writeappend(v_lob,30,hextoraw('793FE7F5A6D00E0753C71FCB8EB4C40093F4E3BFAD1CE7B13F9E28E4FDE0'));dbms_lob.writeappend(v_lob,30,hextoraw('ADD7A0E9F8F4FA5275E48C75E9CFF875A0077F5EE3FA77A419C7A7A9E0FF'));dbms_lob.writeappend(v_lob,30,hextoraw('008526E3EA3F3238F634B93C75DDEA3FFAE2818B819041071D8D19FCFDFF'));dbms_lob.writeappend(v_lob,30,hextoraw('00FD749853EB9F6FCA8E3A0FD7F01F9D1F787EA0704761F4FF00F553719F'));dbms_lob.writeappend(v_lob,30,hextoraw('43EDF4FF000A712475C7E1F963D69075FF000FD69200C63BF7ED4A78EE33'));dbms_lob.writeappend(v_lob,30,hextoraw('ED499FA7E5F9F140C9F407DB23E9EF407F981C8E833FE79E9474F4FCBFC9'));dbms_lob.writeappend(v_lob,30,hextoraw('A0823A7EB9C7E349924FF80C503FCC3767181C8FCA9E71CE7EF714D1D393'));dbms_lob.writeappend(v_lob,30,hextoraw('D39E98F5FF00F551F8FD3F3FCA988760F033EBC7F234671DBFCFD7DE8183'));dbms_lob.writeappend(v_lob,30,hextoraw('FE7AFF009341F5A401BB9E98CF4FFF005523671E949E9C648FF3F5A6EE20'));dbms_lob.writeappend(v_lob,30,hextoraw('F7009EDF4F6F4A6BB00EC851CE7D71DE9E08EDCFF5C75A68F63C74E40FFE'));dbms_lob.writeappend(v_lob,30,hextoraw('BD281F41DBAD20FB85C9F61E9E9DE9DCFE23FCF279A674E33D71F4F4F7E2'));dbms_lob.writeappend(v_lob,30,hextoraw('8C700903F0A603C7F9C7F3A5CF627F1FFF00575A6FBFE3FE78C51C71F4C7'));dbms_lob.writeappend(v_lob,30,hextoraw('FF005E907CC7E320727D7FCFF2A41C743C5333CF3F5FAFF5A5C723A0FCFF'));dbms_lob.writeappend(v_lob,30,hextoraw('00AD1DC2C3F2075C907F1E3FFAF46ECF3DBD3AF7F5EB518FFF0057A7F8D2'));dbms_lob.writeappend(v_lob,30,hextoraw('F4F5E9DC751FE7E947E61F31F9E7A7F9273DFE940C7FFABF9F7EF499E7DF'));

Page 83: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('FCE7A7D68E3B81EBC7E940790B8FA8E7BF43EF49D3201E33D87E78FCE8ED'));dbms_lob.writeappend(v_lob,30,hextoraw('81FF00D7FD690E7FFD7F850038B7B7B7E94BBD7BF527BFB7D6A2CE4E08FF'));dbms_lob.writeappend(v_lob,30,hextoraw('003ED4AB8FE5D7D3F9D03B2FC09B239FAFF3FC29370E7FAFE9CF4A67D7EB'));dbms_lob.writeappend(v_lob,30,hextoraw('EBFD2978FEBEBEDFE7D685FD7EA2F51DD7FA7FF5E90639E49A6E33C75EA3'));dbms_lob.writeappend(v_lob,30,hextoraw('9A5E7FAF3400BC0F7FF23EA28CF1C7D78C7D2985803D7FC7A74EFDA99BB3'));dbms_lob.writeappend(v_lob,30,hextoraw('EDFE7E9ED4FB012E738E3F33FE451F9FA74A629F61F87E1FD29C08F4FCBF'));dbms_lob.writeappend(v_lob,30,hextoraw('0A5DC351DD3F3F4EF9EFC52640FC3FAE6999FF000FC3B8A5CE33C7F9FE54'));dbms_lob.writeappend(v_lob,30,hextoraw('301723D08E98FF003F9D0727A7A76C8A6649EA7FCFE58A7E73FE78FF00EB'));dbms_lob.writeappend(v_lob,30,hextoraw('71400BCF7FF39F414E1EFD71C1C53323AF4FD4F5A01FD0D3FF008617E63F'));dbms_lob.writeappend(v_lob,30,hextoraw('8A5079E99EFE94C240FD3FCFA74A33EDD0F7F7FC69751A1F93F9F3FD28CF'));dbms_lob.writeappend(v_lob,30,hextoraw('EBE99FE629B9FF003FFEAA4CFEBFFD6FEB407E1624CF3F43DBF3A01FF3FC'));dbms_lob.writeappend(v_lob,30,hextoraw('F9EF4CC9E9EDEF47E3EF40B6F98FCF23BF6F5A507A7E751823F5E69C08F4'));dbms_lob.writeappend(v_lob,30,hextoraw('A77FEBF40F993A9F5E0FE1EFC54A1FFF00D633553774C77E3F5FFEB53D5B'));dbms_lob.writeappend(v_lob,30,hextoraw('B75EF9FCA876F98EE5C573D39F4EF53ABFE3544376FE5522B8E3DFF0FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('38CD25FA7417FC31A21FFCFF009E2A60C3208EF59C1F8EA063EBD2A647CF'));dbms_lob.writeappend(v_lob,30,hextoraw('53FE71DE98B737F763FF00AD4D2E7F0CF5F715017E9EDF4FFEBFE14C2E3B'));dbms_lob.writeappend(v_lob,30,hextoraw('F5C56C60BF0252F9FBB838EBC66A32C79F4EBC8EB50B3F7F51DBAF39F6C5'));dbms_lob.writeappend(v_lob,30,hextoraw('44D20FC4D21AD74262FCF6FA8FCFFCE6A069327AE31FE7A7D6A17933D0E7'));dbms_lob.writeappend(v_lob,30,hextoraw('EBDBE9503BE31DFF00A75F6A3F51F72C3B1FAF7CFF009E2AB31EB827D3BE'));dbms_lob.writeappend(v_lob,30,hextoraw('3F4A85A4CF1D3FCFB557697F841CF3EFEB51AF994912B39ECDDFDBA7D0D5'));dbms_lob.writeappend(v_lob,30,hextoraw('767232783C7AF5FCBA734C2DD39FF1F6FAD44580E9FE7FCFF5A9B94890B6'));dbms_lob.writeappend(v_lob,30,hextoraw('EFFF0057E74C63DC738A8F7139FAF6A682475F53FCA82FEE1FB81EBC7618'));dbms_lob.writeappend(v_lob,30,hextoraw('1FD69A48FAFF0093CD213D3BF1CE3F2A8896CF6E9FE49A1069F81213DFAF'));dbms_lob.writeappend(v_lob,30,hextoraw('3FD3F3A8D9C1E80F3E9D0534A938E3348A49C6EE3A723FA8A62245248E0F'));dbms_lob.writeappend(v_lob,30,hextoraw('7EE7E87FA538723A9E9DF3FCE9981D73FE734BD39FF3FE7F3A00737E1E9D'));dbms_lob.writeappend(v_lob,30,hextoraw('C7F4E683D47F8FE7483E61F5EE4F19FF00EBD1F28EFEFF005FF2697900B9'));dbms_lob.writeappend(v_lob,30,hextoraw('03B81F5F4F5A5E99E49EDE9FAFD69303D06338FF00269B8070323FFD5FA7'));dbms_lob.writeappend(v_lob,30,hextoraw('5A60480FA7FF005C73C7B5213E9CFF0091EB4C071D0E3F514B9CF6EC7A7B'));

Page 84: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('D2EC31DB8773D3D3F9F4A5CE30463FCF14C073C15FCC7F9E294F3DBB75F7'));dbms_lob.writeappend(v_lob,30,hextoraw('FC6801F91D00E47D7BD070727BFF009C7F914D1D3D3F5F638C9A327B64E7'));dbms_lob.writeappend(v_lob,30,hextoraw('EB47601C0E3AE69320F18E0F4C114D18EFF973FD0D1DF3FA7D3D6801E4E0'));dbms_lob.writeappend(v_lob,30,hextoraw('FA03EFF95267E9FE7F1A403A9C73F873474FF3D6801727A673CFF4FF0039'));dbms_lob.writeappend(v_lob,30,hextoraw('A50477EB499F5EDDBA73CD267F2EBFE18A02E3B83EB9F6EFED4B9EC78FAF'));dbms_lob.writeappend(v_lob,30,hextoraw('AF4FF269A38EB9E9D3F9528C11E9C7F8E4FE74075179F634B9F5FA807AFB'));dbms_lob.writeappend(v_lob,30,hextoraw('1ED4C27B609FA7F9C5193D7B501FD7EA484A8FC7FF00D44D27EA07D7EB51'));dbms_lob.writeappend(v_lob,30,hextoraw('B00718EBCF4CD28278FF001F5FA51F780FCFA7EB9EBD69723AF41F871FE4'));dbms_lob.writeappend(v_lob,30,hextoraw('D30119F6F5FF00EB7B52F5F538EFED47F907614F5E9C74FE5F85291EFD7F'));dbms_lob.writeappend(v_lob,30,hextoraw('5EBE94DEF8141FCFD280FEBE41CFF9E734BCFF009FAFF9E29B93C74F6FF3'));dbms_lob.writeappend(v_lob,30,hextoraw('F5A78FD383D450026718C8FD7AE3341C9E476F4E9814BCF7FF003D78A43C'));dbms_lob.writeappend(v_lob,30,hextoraw('7E278FE9E9E940201EBC8FF3F4C53F8FF3FCAA3CFF009EDFCA90FAEE1C70'));dbms_lob.writeappend(v_lob,30,hextoraw('28FEBA8C79CFA77CE78A01FF0023DE9A5B1EF4E196E4F739A5B0850724F1'));dbms_lob.writeappend(v_lob,30,hextoraw('D07EB9CD19E78E9FE7DE907AF27D793FFEAA3279C64F6E6980993EBDFDC7'));dbms_lob.writeappend(v_lob,30,hextoraw('AFBE69C3DFDBDA9BD7EBD381F89A08F423F1FEBFE7BD01FD7CC5FD3F0F6F'));dbms_lob.writeappend(v_lob,30,hextoraw('AD26DC673F4E3B53791F875E3D68CFE3FE7E94583F51FF00E47F9EB477E7'));dbms_lob.writeappend(v_lob,30,hextoraw('FCF03D69BB876EA067FA7BD293C7A7F9E7DE900B9FCBFC7141E4F1FE39A6'));dbms_lob.writeappend(v_lob,30,hextoraw('649FC3FCF14631C9FF003FE4D003F039FF003FA518CF739C773CD3464F7C'));dbms_lob.writeappend(v_lob,30,hextoraw('01C8FF00F57F914671EDFE7DF9A7F301D8F43FA1A07F9FD3B53327D4F4FE'));dbms_lob.writeappend(v_lob,30,hextoraw('BC52F43C91DBD3DFDA8F980F27D8FD7F5A70C62A3071FE7D3F5A706FE5F8'));dbms_lob.writeappend(v_lob,30,hextoraw('FD714B701DD303F5E7A519F5E3BFE1C9EFC669075CFF0093FE34BC76E3FC'));dbms_lob.writeappend(v_lob,30,hextoraw('FF00F5A800CFA7D7FAD2E7D7B7D29BD31F9FBF1F9D267FCFE5FD680EE49E'));dbms_lob.writeappend(v_lob,30,hextoraw('94838E87AF5A667A7AE71FD68FF3DBA7B53F260499FF000E9FFD614B9FFE'));dbms_lob.writeappend(v_lob,30,hextoraw('BF3EFF00875A8C673EBDB3F4A507FAF5EDD68F4DC44D9ED93FE1DB8A9149'));dbms_lob.writeappend(v_lob,30,hextoraw('E3BFD3F4AAD93C76E7FCF1C53C37B761FE7F5A3C97F5F90FA16D5BA7D2A5'));dbms_lob.writeappend(v_lob,30,hextoraw('563F963F0FCAA906FF00F57D3FFAD4F0D9EE79F5C7E3EF408DF2FF004FF3'));dbms_lob.writeappend(v_lob,30,hextoraw('FF00EA14C2DEA076350647E38FCF39A8D9FF005E7BFAF4ADBD4C499A4E3E'));dbms_lob.writeappend(v_lob,30,hextoraw('950339393C7E3FE73DAA32DC123DFB7F5A85C9F6FCFEB53741DB6B0FDD9D'));

Page 85: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('C49E0FA7E5E9E951B3E3903A77FF0038A899F8EE0F238FF3F4A859B3D33F'));dbms_lob.writeappend(v_lob,30,hextoraw('E7391EB4994B51ECDD79C67D2A02D8FF00EBFEBD69ACFC73FE7B7F5A84B0'));dbms_lob.writeappend(v_lob,30,hextoraw('3D4E0FF9EF52F62D2B7F5A8F2D9EFD3B546CC481E9FE71DE984E38073C77'));dbms_lob.writeappend(v_lob,30,hextoraw('FD3B5267D4E695BF018FCFBFB9A3776EA7FCFAD47BB8E0F1DFFC69A491FA'));dbms_lob.writeappend(v_lob,30,hextoraw('7D3FA53192337D3F4FF3D69BBBD7AE3FCFB533EB9FE7F4FAD273E9EDFE34'));dbms_lob.writeappend(v_lob,30,hextoraw('213D47E40EE7DB1FA500FF004E98F5EF4DEDD39F7E7F4A5CFD07FF00AFEB'));dbms_lob.writeappend(v_lob,30,hextoraw('405FD50A3AE4E3FCF269F91EDFA7E7D7BD30673C038C93EBFCE97AFF002F'));dbms_lob.writeappend(v_lob,30,hextoraw('F38FC281FE63FD976FE1FF00D6A4FCCF34CDBD48073FE78F4A70CFAE7AFE'));dbms_lob.writeappend(v_lob,30,hextoraw('428B885CFAF6CF4FC29D95FD71EDD3FCF7A6673ED9E3D697A73D6818B81D'));dbms_lob.writeappend(v_lob,30,hextoraw('3181F87A7FFAA94291D33C7AD2027BE7D3FF00D78A4C8FFF00552FEBB80E'));dbms_lob.writeappend(v_lob,30,hextoraw('6CE3938E78CF5E31467D467FFD5499CE703DC7E34A4F6FF3FCE8D83E42F3'));dbms_lob.writeappend(v_lob,30,hextoraw('CFB71D7F0E94A0F3C0EBC7F9FC299EFD33CFAFAFBD1D07E1DBFCFB53EE1D'));dbms_lob.writeappend(v_lob,30,hextoraw('74FEB51FB873C74E6938FF003DBBFD3FFD74DDDC74E99FCFFF00D74B9EC7'));dbms_lob.writeappend(v_lob,30,hextoraw('07FCE6900EFF001EF47CBDB3C71C53383DBAF341FAF4F6F7A0077AF4FF00'));dbms_lob.writeappend(v_lob,30,hextoraw('3CD341C1EBF966973C7D3B74E2979FFF005E7DFA9E940003EE718C7F8D2F'));dbms_lob.writeappend(v_lob,30,hextoraw('20E73EFCFF009ED4DC1CFF005FF1E94A781EBD28D7FAD8050C7A71F88F4F'));dbms_lob.writeappend(v_lob,30,hextoraw('FEB5389F5C73CFF2FC2980FE5D81E9FE147E7FE1C0A34BEC1F88EEC3B9CE'));dbms_lob.writeappend(v_lob,30,hextoraw('3FCFE14BE83F9FFF00AFBD37D3FCFB5293F81FFEBD1FF0442E73DBF1A39E'));dbms_lob.writeappend(v_lob,30,hextoraw('48CF4FEBF853323D7FCE0519CF7E7AE3DE81A1DBBB77FCFBD00B5307A8FA'));dbms_lob.writeappend(v_lob,30,hextoraw('D3811C60E07FFAFAF1400EE7A923F5E69473FCFB8E00FAD267F9E3FCFE14'));dbms_lob.writeappend(v_lob,30,hextoraw('873EDFAFA7FF005E801FD7A751CFB7D6933FCFDA999C90B8C7BF7FF0A00E'));dbms_lob.writeappend(v_lob,30,hextoraw('7B1FFEB7E2051A07A8EFAFEBF8D46F91CF5E73FF00EBEF5293C7F8D47CE7'));dbms_lob.writeappend(v_lob,30,hextoraw('1E9C7EBF951FD761F6F4115B232793EE734A18FF009EDFE7148DFD7FFD5F'));dbms_lob.writeappend(v_lob,30,hextoraw('A5282719F7EFFD28DBE6225071DFFC7FA9A4C907F0EDFE734C0D8CFF004F'));dbms_lob.writeappend(v_lob,30,hextoraw('C29339EB9A107F5725CE33FD6909FCBA7AFB7A53475F5E946EC1FE5F87BF'));dbms_lob.writeappend(v_lob,30,hextoraw('5FAD01A8EEBD7FCFEB498039CF3F503F9FAD2673FE7FA75A4CF3C7F9EFD6'));dbms_lob.writeappend(v_lob,30,hextoraw('8B031DFE7F134678E293D0FF009C7EB4671FE7F4E2806BAFF4C774E9EF4B'));dbms_lob.writeappend(v_lob,30,hextoraw('83D87F3F5EF9A6F6CE4F3F4A09FF003FCBF5A003F5FD7F3A4C67FCFB8A5C'));

Page 86: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('E73D4F3FFD7E9467BFF33DA800C7E5EDF8FE9475FAF23FAF3D68C8E79A3F'));dbms_lob.writeappend(v_lob,30,hextoraw('CFD6800E7E9EFC0A01F7FE7FD293FCF1499FD38CFB7B1A06484F6FEBFF00'));dbms_lob.writeappend(v_lob,30,hextoraw('D7A3F1F4EA7E94839CF6EE7B7E7F87BD2F7C7E3D7FFD7400E073F8E3DFD3'));dbms_lob.writeappend(v_lob,30,hextoraw('F0A31EFEDDBF3E6A3E7F0EBCD049F6C502D893FCFA77FF00EBD1FE3E9DEA'));dbms_lob.writeappend(v_lob,30,hextoraw('1C9E87BFF2A77E1FAD003FB7A73FD3FF00AF499FF26933FF00EAFA7E3EB4'));dbms_lob.writeappend(v_lob,30,hextoraw('1233EA7A7F9FD28F4B85B61E0F38FF0039ED4A0FF2FC7FCFD2A2CF1800F4'));dbms_lob.writeappend(v_lob,30,hextoraw('E9DB9FAD3813DBF4A064D9A901FC7FA5419FA7F9CF34E04F7FF3FD6908D7'));dbms_lob.writeappend(v_lob,30,hextoraw('2FC75EB9FF001C54258E7EBC019FF3FE4D465BF0CFF2E7B7E74C67FAF5FE'));dbms_lob.writeappend(v_lob,30,hextoraw('BC679AD998243D9FF1EDEDD3E99A88BFD3B9E3FF00D75197E3FC78E9F854'));dbms_lob.writeappend(v_lob,30,hextoraw('2CDF88CE78FF003EF52348959BF01FE7DAA0693FCF39FF001A6173F97A7F'));dbms_lob.writeappend(v_lob,30,hextoraw('9F4A80BE49E31E952FE45A5F80E67CD4791D739FD7B629BBB8EFD477FCA9'));dbms_lob.writeappend(v_lob,30,hextoraw('A4F5FC282BFC8909CF23823D3D29BF97A53370E7A528E39FCBF5C6281A17'));dbms_lob.writeappend(v_lob,30,hextoraw('D4E783F4FF003F8D267A7F9FC7147BE4FF009FAD379F6FF3FA74A103F21C'));dbms_lob.writeappend(v_lob,30,hextoraw('0FF9FF00238A767F0F6FC6A1271D7F218FF0C5286E7FC8FC69EFE8224EDC'));dbms_lob.writeappend(v_lob,30,hextoraw('F07FA75A064771C1FF0038FCA981BAFBFF009F4A7EE3FE7FFD74ADA07E62'));dbms_lob.writeappend(v_lob,30,hextoraw('E4E38EFF00D7EB4B939C13FF00EBC8FF000A667FCFE54BCFA7E7FE41A062'));dbms_lob.writeappend(v_lob,30,hextoraw('827B63FCF4A50C7D3FFD5DA9B93EF467B73E9CF5A03F02438F4CFF009F4C'));dbms_lob.writeappend(v_lob,30,hextoraw('D2161FCBAD3723A0FAD28F7E71F97F851EA02F6C839FFF005500F4FA7BD3'));dbms_lob.writeappend(v_lob,30,hextoraw('49CF51C0FF003C9A5C641E3DF9FF003EF407DC3F273D47F871D3F2A33939'));dbms_lob.writeappend(v_lob,30,hextoraw('E3A7F2A8C8FCC0FF00EB67F2A4071EA0FBD21FDC4BC8F4EBDBFCFE14A1B9'));dbms_lob.writeappend(v_lob,30,hextoraw('F5FF003F5F4A8F9E4E7FCFFF00AC537AFD7F3F4EF40AC4C48CF3FF00D7A4'));dbms_lob.writeappend(v_lob,30,hextoraw('07F11FE7BD44391EE3F0A7F5C60E3B73EBFE140FA8FE4FFF005BE99A43C7'));dbms_lob.writeappend(v_lob,30,hextoraw('E3FE473C5371F5EBFE7DFD6973C8EA7FFD5DE8FEAC4FCC5FA7F9EFCD3812'));dbms_lob.writeappend(v_lob,30,hextoraw('41E00EF8FD6998C7AF4EF4849EFC60FE1F4A7F31F444991DF3DA93381EBD'));dbms_lob.writeappend(v_lob,30,hextoraw('3A9A67AFF9E98F4A5E7AE7A7B7F4A5FA8598EDC0E0138FAE3F9D2F18EBDF'));dbms_lob.writeappend(v_lob,30,hextoraw('B8A8FF00023FCFF9F4A518E718E4FD3F2A7F21F98FCF3C74F6FF003DA97A'));dbms_lob.writeappend(v_lob,30,hextoraw('F6EDF8F634D3F8F1D6933F81CF6E3DFF00AD217E43FA75FD71FAF341C75C'));dbms_lob.writeappend(v_lob,30,hextoraw('0EBF971F9D3727D7F98E9406EFC74E3A7E94C3524E3D31FA7E1498E7A639'));

Page 87: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('FF003EFD29B9CFE1F87AE07B527E27F0A431E78C73F4FE7499E074E9FA9F'));dbms_lob.writeappend(v_lob,30,hextoraw('D4D3327D7FCF7A507F1E29885CE7B7F3A53FE7B7F4A6E7AF1EBD7A73F866'));dbms_lob.writeappend(v_lob,30,hextoraw('8CFD7F1F73F5A41BF71727D79CFEB4EDC79E9E9DF3FF00EAA60C753F5EBF'));dbms_lob.writeappend(v_lob,30,hextoraw('41CFD2949A7D8071EBD3DF8FF39A4E3BF5FC3B5373D78F7E2937738F4FCB'));dbms_lob.writeappend(v_lob,30,hextoraw('A76A43EDD07FBE6933EDDB1FA53738A33EDD73F9F1EDD8500BF524C8007E'));dbms_lob.writeappend(v_lob,30,hextoraw('5F4F6FCA8CE4FE9F9E3B8A67F9E7FCF5A53D318047BF342FC407E073F5F7'));dbms_lob.writeappend(v_lob,30,hextoraw('A38FCBD7FF00AD4DCF1FAF7FE4283DFAF5FD7A7FF5E80F41DDF8FA739EF4'));dbms_lob.writeappend(v_lob,30,hextoraw('7D7FCFBF5A6FF9EDEDF8500E3F0F4FF3ED407A741DFA7340E7B8FE7F97F9'));dbms_lob.writeappend(v_lob,30,hextoraw('34CDC334673F97E1430F41C4E7AFF9EBF8521EB4DE7AFD0F3FD28FC3DFF4'));dbms_lob.writeappend(v_lob,30,hextoraw('A005C7F8D3811EFEB4CCFF009CFB934B9FAFE79A603F3F8FFF005FDE8E3F'));dbms_lob.writeappend(v_lob,30,hextoraw('3F5A667BD0323FAE3D681120E9CE3FCFEB4BEBEFCFF9E2A3CFEB4B9F7ED8'));dbms_lob.writeappend(v_lob,30,hextoraw('E7FAD161A24CFF009FCE9A4F3FE18F5EF4CCFA8F4A3F5C7F5A05FD761791'));dbms_lob.writeappend(v_lob,30,hextoraw('4993EDE9CFE3F5A3F03C631F4F4CE28FCFD3B8A00507AE4FE5E9CD2E7B7E'));dbms_lob.writeappend(v_lob,30,hextoraw('1DBF5CD3738E79CFD3FCFF009146EEDFE7FCF140EC3F81F4FF003CD19C54'));dbms_lob.writeappend(v_lob,30,hextoraw('65B3FE78CF4F6A424FBF3FE47E945844DBB8FF003FA52EE3FE7A7F3A841F'));dbms_lob.writeappend(v_lob,30,hextoraw('F3C77A703FAFD2819FFFD9FFE108DD687474703A2F2F6E732E61646F6265'));dbms_lob.writeappend(v_lob,30,hextoraw('2E636F6D2F7861702F312E302F003C3F787061636B657420626567696E3D'));dbms_lob.writeappend(v_lob,30,hextoraw('27EFBBBF272069643D2757354D304D7043656869487A7265537A4E54637A'));dbms_lob.writeappend(v_lob,30,hextoraw('6B633964273F3E0D0A3C783A786D706D65746120786D6C6E733A783D2261'));dbms_lob.writeappend(v_lob,30,hextoraw('646F62653A6E733A6D6574612F223E3C7264663A52444620786D6C6E733A'));dbms_lob.writeappend(v_lob,30,hextoraw('7264663D22687474703A2F2F7777772E77332E6F72672F313939392F3032'));dbms_lob.writeappend(v_lob,30,hextoraw('2F32322D7264662D73796E7461782D6E7323222F3E3C2F783A786D706D65'));dbms_lob.writeappend(v_lob,30,hextoraw('74613E0D0A20202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020200A2020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));

Page 88: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020202020202020202020202020202020200A202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020200A20202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020200A2020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020202020202020202020202020202020202020200A'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020200A20202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020202020200A2020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('20200A202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020200A20202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020202020202020200A2020202020'));

Page 89: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('20202020200A202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020200A20202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('2020202020202020202020202020202020202020202020202020200A2020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020200A202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020200A20202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('0A2020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020200A202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020200A20202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));

Page 90: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('2020200A2020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020202020202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('20202020202020202020202020200A202020202020202020202020202020'));dbms_lob.writeappend(v_lob,30,hextoraw('202020202020202020202020203C3F787061636B657420656E643D277727'));dbms_lob.writeappend(v_lob,30,hextoraw('3F3EFFDB0043000201010201010202020202020202030503030303030604'));dbms_lob.writeappend(v_lob,30,hextoraw('040305070607070706070708090B0908080A0807070A0D0A0A0B0C0C0C0C'));dbms_lob.writeappend(v_lob,30,hextoraw('07090E0F0D0C0E0B0C0C0CFFDB004301020202030303060303060C080708'));dbms_lob.writeappend(v_lob,30,hextoraw('0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C'));dbms_lob.writeappend(v_lob,30,hextoraw('0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0CFFC0001108004B006003'));dbms_lob.writeappend(v_lob,30,hextoraw('012200021101031101FFC4001F0000010501010101010100000000000000'));dbms_lob.writeappend(v_lob,30,hextoraw('000102030405060708090A0BFFC400B51000020103030204030505040400'));dbms_lob.writeappend(v_lob,30,hextoraw('00017D01020300041105122131410613516107227114328191A1082342B1'));dbms_lob.writeappend(v_lob,30,hextoraw('C11552D1F02433627282090A161718191A25262728292A3435363738393A'));dbms_lob.writeappend(v_lob,30,hextoraw('434445464748494A535455565758595A636465666768696A737475767778'));dbms_lob.writeappend(v_lob,30,hextoraw('797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3'));dbms_lob.writeappend(v_lob,30,hextoraw('B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5'));dbms_lob.writeappend(v_lob,30,hextoraw('E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101'));dbms_lob.writeappend(v_lob,30,hextoraw('010000000000000102030405060708090A0BFFC400B51100020102040403'));dbms_lob.writeappend(v_lob,30,hextoraw('040705040400010277000102031104052131061241510761711322328108'));dbms_lob.writeappend(v_lob,30,hextoraw('144291A1B1C109233352F0156272D10A162434E125F11718191A26272829'));dbms_lob.writeappend(v_lob,30,hextoraw('2A35363738393A434445464748494A535455565758595A63646566676869'));dbms_lob.writeappend(v_lob,30,hextoraw('6A737475767778797A82838485868788898A92939495969798999AA2A3A4'));dbms_lob.writeappend(v_lob,30,hextoraw('A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7'));dbms_lob.writeappend(v_lob,30,hextoraw('D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C0301000211'));dbms_lob.writeappend(v_lob,30,hextoraw('0311003F00FDFCA28A2800A19828C938CD617C42F88FA3FC30F0E5C6A9AC'));

Page 91: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('DF5B58DA5BAEE6795F680338F73D48000049240009201F867F68AFDBE75D'));dbms_lob.writeappend(v_lob,30,hextoraw('F8ADA65FE9FE1EBCBEF0CE912AFF00A334236DDEA8A71866911B312310C8'));dbms_lob.writeappend(v_lob,30,hextoraw('51486523E666C951E6E3B34A3865696B2EDFE7DBFAD0F6F27C8713984ED4'));dbms_lob.writeappend(v_lob,30,hextoraw('95A3D64F65FE6FFA763EC2F891FB4E7843E1A5E4F6577AB5BCFA9C113CCD'));dbms_lob.writeappend(v_lob,30,hextoraw('676EC1E5013390C4908A720801981278009E2BC3BE20FEDFBAACBA34577E'));dbms_lob.writeappend(v_lob,30,hextoraw('1FD0A445B9B992D156F4B36D9232415D916189C6C3912630E39C8207C8DE'));dbms_lob.writeappend(v_lob,30,hextoraw('1BD6AFBC4BA868F1DE6A125BFF0063A8B786F164904E1718508F9246D5E0'));dbms_lob.writeappend(v_lob,30,hextoraw('04000009E4B3357A0F84A3D32C2CAD7ECF6A84C84B1B895DA5918293F337'));dbms_lob.writeappend(v_lob,30,hextoraw('015541C0381F292324D7CAE233CC455D9F2AECBFCF7FCBD0FD0F09C1D82C'));dbms_lob.writeappend(v_lob,30,hextoraw('324EA2737E7B7C92FF00827A0DDFED17F11FC45A45CDE15D6219E56FDD43'));dbms_lob.writeappend(v_lob,30,hextoraw('6914EA91292B863B9D9F6E3710325BE56E704628F8ABF6AAF14786FC54D6'));dbms_lob.writeappend(v_lob,30,hextoraw('76571E284B2663F669AE6498CD7499C07C314DA080480501518079C9ACB8'));dbms_lob.writeappend(v_lob,30,hextoraw('67998462DEF2E2368147987CD66C12704139F9874E3A6719F7D117F75359'));dbms_lob.writeappend(v_lob,30,hextoraw('B43753BBDB484C691CB724A4B26D3B14210C3249503A125BA7AF12C6CEFF'));dbms_lob.writeappend(v_lob,30,hextoraw('0016FE67A8F2FC3476A51B2E96FEAE77DA37EDA1E21D36D5EE74FBF875BD'));dbms_lob.writeappend(v_lob,30,hextoraw('334D8C1BE7D4E252C0E46E5492258CB15E0EED84618704E2BD93E127ED79'));dbms_lob.writeappend(v_lob,30,hextoraw('E1DF893710D8DEC73E83AACCC6348AE41304CC06711CC06D271CE0E0E08C'));dbms_lob.writeappend(v_lob,30,hextoraw('807207C2FA8453585C1996065825972E238DCA33839C67038E1480D9230B'));dbms_lob.writeappend(v_lob,30,hextoraw('D0D775E14D623F11ACF14D6B6A6E2E65F2BEC4D84B68946E62C58B021C36'));dbms_lob.writeappend(v_lob,30,hextoraw('08272F939053095DD85CEEAC27CB297C9EBFD7C8F2B31E16C1D5A6E508F2'));dbms_lob.writeappend(v_lob,30,hextoraw('BEEB4FBFA3F9F4EA8FD06A2BE7AFD9EBE395D784F55B1F0B6BF792DE69D7'));dbms_lob.writeappend(v_lob,30,hextoraw('A5A1D2F509D8192DE45603ECB330E09C3028C42965E8BF2B88FE85AFB2C2'));dbms_lob.writeappend(v_lob,30,hextoraw('E2A35E1CD1FEBFAFEB5BA3F30CC301530957D9CF5ECFBAFEB75FA6A1591E'));dbms_lob.writeappend(v_lob,30,hextoraw('3CF1AD97C3CF08DFEB37ECC2DAC2232155E5E520708BEE4F1CF1DC90326B'));dbms_lob.writeappend(v_lob,30,hextoraw('5EBE1DFF0082B1FED016FA7C1178392F1A211C3992154244F3C81725DBF8'));dbms_lob.writeappend(v_lob,30,hextoraw('56285870325CDD27646CE598E2FEAF41D45BECBD7FAD4E8C932D78EC5C70'));dbms_lob.writeappend(v_lob,30,hextoraw('FD377E9FD69F33E7BFDACBF6A7D47F684F13DC4F25E5C268915CE6D6D036'));dbms_lob.writeappend(v_lob,30,hextoraw('14955237851CE7EF05C8C80C7BB313C0E8B78F74AD949218F69290B1E5D7'));

Page 92: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('04961C73C641C1EFEB9AE2EFBC4B6D69AADC431CB79710A0CCB7516D324A'));dbms_lob.writeappend(v_lob,30,hextoraw('001B8201C282401F302700743907534ADFAADE401C057836AE1312ACBD0E'));dbms_lob.writeappend(v_lob,30,hextoraw('E63CEF624E33C703D863F36AB5A739372EA7EF386C253A14952A6AC9743A'));dbms_lob.writeappend(v_lob,30,hextoraw('5D73C5F69A7EABA05B48B7310769EF9A3F33648C9198D0B05C83901C7B28'));dbms_lob.writeappend(v_lob,30,hextoraw('273C1E7D5FC21F13EDA1F0E1BB817CF795A2468A390C4223264AC8E495C9'));dbms_lob.writeappend(v_lob,30,hextoraw('2B850178247523AF9FF8ABE17DCEB5E1D97598EC6EEED748B8124D2B4219'));dbms_lob.writeappend(v_lob,30,hextoraw('92075058A025496C46A576963C630464D6CF82E68B4CF224C16D42689ADD'));dbms_lob.writeappend(v_lob,30,hextoraw('14CACA2E90A0F9272CA188DC49046DC165CE14BA9D16966DD8E7A8D4AE97'));dbms_lob.writeappend(v_lob,30,hextoraw('43B1D3FE30C9AC59DD2452D859EA0CA51F64A5FCBE48DCD9FBC49C600007'));dbms_lob.writeappend(v_lob,30,hextoraw('70A31CDBB7D63C8B6171A99B9D4EE046EC640556256DC806DC9C9C2976ED'));dbms_lob.writeappend(v_lob,30,hextoraw('C84E0E4EDE32CFC3326ABA44DF68B1856FE63948661C26700F1D9C672460'));dbms_lob.writeappend(v_lob,30,hextoraw('11EBC1AEEFC13F0B67B1D52E61D6B5078E4D3034735A6CF359522DAEC46D'));dbms_lob.writeappend(v_lob,30,hextoraw('620991988DA73900F002F39C13A92B2FC4CEA385357FCB7FF31924F3DE5E'));dbms_lob.writeappend(v_lob,30,hextoraw('4AD768F3095D48D8495F9D432103A1521B703D483CE7A57B2FC2BF859A7E'));dbms_lob.writeappend(v_lob,30,hextoraw('ABA7C578419CA286DCA84796DDF8240C90C467FDAC8E82BCDEEEFF00C35E'));dbms_lob.writeappend(v_lob,30,hextoraw('20D5DC5B699721EC8085963947D9AD860821550120333E4B6402C01DD57B'));dbms_lob.writeappend(v_lob,30,hextoraw('52F8F3224F6525922C17D6A9BE4915373DCE0E46E4C0C125893C007271DA'));dbms_lob.writeappend(v_lob,30,hextoraw('A2A462AA377BFF005FD6E7362235AAD2E4A5EEBEFDBFAF2FC8FA0FC75F0B'));dbms_lob.writeappend(v_lob,30,hextoraw('B4BF18FC37BA1688F61AC2C4AD14CDB336F72BCC2CEA09C912615941F996'));dbms_lob.writeappend(v_lob,30,hextoraw('49141C357A2FECDFF125BE28FC25D37519998DE460DBDC863960EA7009E9'));dbms_lob.writeappend(v_lob,30,hextoraw('925769CE39CF1C60D7C931FED29AC8D1D91AF6D526742CF15BF9AAEEB8C8'));dbms_lob.writeappend(v_lob,30,hextoraw('624FCB82080A1581CFF0E3AFAB7FC1393C4AD7F1F8DAC002B126A1F6D541'));dbms_lob.writeappend(v_lob,30,hextoraw('9D91992499182E7A0262CE3D49AFABC8F177AB18256BA6BF55F97E2CF85C'));dbms_lob.writeappend(v_lob,30,hextoraw('F328AB4B0139D697338C935F3D1AFCBEE47D375F921FB6678D2D7C73FB44'));dbms_lob.writeappend(v_lob,30,hextoraw('F8D9F56170D1C3A95F5A43B06E111B7BB5B7DC46E1D63808E3FBCBC127E5'));dbms_lob.writeappend(v_lob,30,hextoraw('FD6FAFC8DF8C3F0B6FFC55FB4D7C4FD2E0F2FF00B4749F166A32953288D8'));dbms_lob.writeappend(v_lob,30,hextoraw('C57128BB4232400765D260920673923048DF89E7CB4A127B26C5C0118BC4'));dbms_lob.writeappend(v_lob,30,hextoraw('D56DEA92FBAFAFE3639CF87FF0FB4CF8ADA9AE93A2787EF27D5AFED9E1B7'));

Page 93: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('F3031FB3DCEE8C8723710C02ACA0602FCAEB9E5493ED5E3FF867E19F827A'));dbms_lob.writeappend(v_lob,30,hextoraw('9BD8DB2E8E3528ADA64090B9B88AD66172E6271941C18157707DCC37E064'));dbms_lob.writeappend(v_lob,30,hextoraw('216367C37FD8FF00B257806FF5292E639FC4379094B316FBD5D572B924B3'));dbms_lob.writeappend(v_lob,30,hextoraw('0033824ED19E073C73F37F8B7C792F8B5AE2E4CA22BA7C24D2C87E6049C3'));dbms_lob.writeappend(v_lob,30,hextoraw('3124F385C74C73C71C13F1D1AEE4B6563F478D39D6AB7526A0BF17FE4BA7'));dbms_lob.writeappend(v_lob,30,hextoraw('7773D2BC4FF142E3C55A8CD045ABAC16934ABF68C5C2AC68855D56224F44'));dbms_lob.writeappend(v_lob,30,hextoraw('039240DB939EB8038683C756969AB7973CE96AF6AE4412A92AAEC5B695C8'));dbms_lob.writeappend(v_lob,30,hextoraw('C9439E8C4B06C2F038238DBAB989E16B58C048E6C8B5328F284C57250820'));dbms_lob.writeappend(v_lob,30,hextoraw('32B3104B7538DDD873581A86A936B72B6936F66DFF0012B563347B7323A9'));dbms_lob.writeappend(v_lob,30,hextoraw('CEDE002581CE37638C28270C28852E66DCCE9924972D3D8FA0B4BF8953EB'));dbms_lob.writeappend(v_lob,30,hextoraw('3791E9D13C1742104CD1DC6124B6507717E3821490C36E490C542824668E'));dbms_lob.writeappend(v_lob,30,hextoraw('99F186C7FB4A7BEB14D42510BBEDF3E611C2AC49C49D15B9CA12BBF71DA0'));dbms_lob.writeappend(v_lob,30,hextoraw('9601486F14F85FF17A44B65B78CDCC97B62AD1B32B942E5483B53610ECC0'));dbms_lob.writeappend(v_lob,30,hextoraw('2B3609CFCD803B56778C7C617AF241A90962B9B295413776EAA77A973CB1'));dbms_lob.writeappend(v_lob,30,hextoraw('C72FD179E30173D79DD249EA95CC950E6D75B7DDFF0004F75B0F8B9225A5'));dbms_lob.writeappend(v_lob,30,hextoraw('D5BDBDECE86ED5619E54453F28C02A3006C1C1FB8392476CE62D43C7EAB7'));dbms_lob.writeappend(v_lob,30,hextoraw('C64B7926BCB81F31B824484923A0527D7DCF51E99AE374BF15785EF749F0'));dbms_lob.writeappend(v_lob,30,hextoraw('94093E82350D562B986FD6F6FAE6DACAD6601BC896E591F7AA8C8388D110'));dbms_lob.writeappend(v_lob,30,hextoraw('E5016625CAD5D27E21786A5BCB8B6315A5BDBDC5AB4D14F7B7D3C4B06C9D'));dbms_lob.writeappend(v_lob,30,hextoraw('CBEE29D6E0C2A111182AEE60DB777065E19DD31C64B5B2B7F56FD3EED8F4'));dbms_lob.writeappend(v_lob,30,hextoraw('9F0B78C24D6EEE779EE0C935D4821089C386070B95EE43311C9047E383F6'));dbms_lob.writeappend(v_lob,30,hextoraw('4FFC128EDCEAFE19F1EF885548B4BFD6BFB3ED4E490E2D94990A93C10259'));dbms_lob.writeappend(v_lob,30,hextoraw('A442471BA361D54D7E6AB7C5197C3FA12BD9C0D7BA9DD49FD9DA5C1FEA9E'));dbms_lob.writeappend(v_lob,30,hextoraw('EEEE53B235C8E7976F998F201CE4718FD74FD833E1B5B7C10FD94BC1FA04'));dbms_lob.writeappend(v_lob,30,hextoraw('6DE67D9ECCCAF201FF001F324B23CD2CFF00F6DA69259BFEDA8E074AFA2E'));dbms_lob.writeappend(v_lob,30,hextoraw('1DC3B759CFB2FF00807C5F1B6214305ECD7DA697DDAFF91EB53EB2A8A412'));dbms_lob.writeappend(v_lob,30,hextoraw('A31D79AFCA3FF82BFDEDFF00ECA7FB6DE83F126DB11F85FE26D843617F33'));dbms_lob.writeappend(v_lob,30,hextoraw('80D0C77F68422EEECA7CB963219BB3B11C46C57F42F56F88D142AC3CD1CF'));

Page 94: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('6CF35F39FEDDDE0CF0DFED65F00F5BF047885E38A2BC5F36C6F5E3129D3A'));dbms_lob.writeappend(v_lob,30,hextoraw('ED4111CE14FDE5F98ABAE46F8DDD72320D7D7E65952C561DD36AFD7FAFD3'));dbms_lob.writeappend(v_lob,30,hextoraw('CEC7E799166D2C063235D6DB3F47FF0006CCFCF8F8C7F1E6F3C6F1452C97'));dbms_lob.writeappend(v_lob,30,hextoraw('CD2ACC1A2851DF044CE7A609E1B737D30A793D6B83D47C7314314B058CC6'));dbms_lob.writeappend(v_lob,30,hextoraw('EA48E105E59395120639209E830140EFBB0578E2BE7AF17F8B7C47FB2678'));dbms_lob.writeappend(v_lob,30,hextoraw('FEFF00C21E39B1696D34A9157CF911AED628BFE59B37199A061FEAEE1391'));dbms_lob.writeappend(v_lob,30,hextoraw('C2B0593217A6D33E22E97AE68F3DE41AEC114C90B340860FB45BDE858E67'));dbms_lob.writeappend(v_lob,30,hextoraw('62B708C7E663E5C4A8D1B2B6E62D22E369F80965AE87BAD688FDA2966B4F'));dbms_lob.writeappend(v_lob,30,hextoraw('11052A2D773D1ADBE234176AD63712CE6DAE23F2E58F2106ECF0C49033F3'));dbms_lob.writeappend(v_lob,30,hextoraw('630C7A120E462B2353F1D5CE81AA40BAB94D51748BB48239828124B6928E'));dbms_lob.writeappend(v_lob,30,hextoraw('E0F2A46EC907A3478AF255F1FDB5F49B166480797BA588FC8EC0F27721EA'));dbms_lob.writeappend(v_lob,30,hextoraw('BDB8F7ACBF14F8F1B58BAB38A37B696511C76ED34523C8F246ADB90BAB70'));dbms_lob.writeappend(v_lob,30,hextoraw('3E560BD79080D5C70AF9ACC978D8F2F327A9ED7E23BF9BC2DE258E4134C9'));dbms_lob.writeappend(v_lob,30,hextoraw('1DE43E745710E3E59621C918E7046D201E78AE9EC3E20BE9B3CB770A5AC9'));dbms_lob.writeappend(v_lob,30,hextoraw('05C44B2DEDBCA8A844722F322F42CA1C90186EDB8C30C1E7E7F97C717179'));dbms_lob.writeappend(v_lob,30,hextoraw('6B15BDCDC450ADAFEF6232C80095768270C4E3E56C823AFCA2B4347F8952'));dbms_lob.writeappend(v_lob,30,hextoraw('EB4D0DAD9DFC57335A6442810CBE6A3120C6B956CF6F97904120D635306D'));dbms_lob.writeappend(v_lob,30,hextoraw('ABB3A29E60B9ACBAEC7B06B3A943733CCFA6B456930512B5AAB79D194202'));dbms_lob.writeappend(v_lob,30,hextoraw('996265E4C618ED6563B90B739186AA96BE24861370F7176B1456D1F9B3DC'));dbms_lob.writeappend(v_lob,30,hextoraw('CA4ECB753DCFFB5C703AF3DB935E6FAA7ED03E19F857712F9D2DA6917F02'));dbms_lob.writeappend(v_lob,30,hextoraw('CDE6D9E9CCB757103C8A559618F3E5DAA9EE1DC952D9083016B0BE143788'));dbms_lob.writeappend(v_lob,30,hextoraw('7F6BBF12DBC70C56DE12F04D8C804D70A8CF6C1828C94573BAE273C75380'));dbms_lob.writeappend(v_lob,30,hextoraw('48C955C0ADB0B9655AD24927633C5E6F87C3C1BAB25F23ED6FF82737C3F5'));dbms_lob.writeappend(v_lob,30,hextoraw('FDA5BE3D5AEAF710CF6DE13F06A29B99DB00C71B8398C13FF2DEE30C800E'));dbms_lob.writeappend(v_lob,30,hextoraw('6389A56207CB8FD79B0F8C30CCA8231145181B52341848D40C0503B00000'));dbms_lob.writeappend(v_lob,30,hextoraw('3E95F9BBFB3FF8C342F847E03D37C35E1B816C347D3FE6C6FDD35D4A40DF'));dbms_lob.writeappend(v_lob,30,hextoraw('71337F1CAF81963D000A005000F61D0FE3A062AA676248E9E666BF43CAF2'));dbms_lob.writeappend(v_lob,30,hextoraw('C86169DB793DCFC6F88B39A998E239DAB463A25FAFAB3A3F157C7073BC09'));

Page 95: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

dbms_lob.writeappend(v_lob,30,hextoraw('9CE38C67A73F9D7937C41F8D85E3954CEC3AE46735C5F8A35098C8CA6424'));dbms_lob.writeappend(v_lob,30,hextoraw('1F61EA6BCD3C6DA8CEECEA65620577CAA347974A8A6EC711FB59C5A0FC6D'));dbms_lob.writeappend(v_lob,30,hextoraw('D18596BB62D3C968C4D9DE42E62BAB3246098DFAE0F746CA377078AFCF5F'));dbms_lob.writeappend(v_lob,30,hextoraw('891F003C47F0CB5392E7C33A94D7106EDF9B3222727FDBB66CC64E3BA1C1'));dbms_lob.writeappend(v_lob,30,hextoraw('F415F7278D58CE0EFF00981EBE9D2BC77C676B182E420076E7F5AF371108'));dbms_lob.writeappend(v_lob,30,hextoraw('CF56B5FEB73D7C3549D35683B7F5F81F27DC7C75D7F47885AEB5A66997B2'));dbms_lob.writeappend(v_lob,30,hextoraw('A11F35C4325ACA707B8E573C7F0E07B54D6BFB4CC71A047F0E40C9B76E13'));dbms_lob.writeappend(v_lob,30,hextoraw('55744C63A00071CF3F9FAD7B36BBC9743F320C8DADF30FD6B9EB8D36D448'));dbms_lob.writeappend(v_lob,30,hextoraw('5BEC969B89EBE427F8579FFD9F4E4F6FCD7E47A71CEB131D39BF27F9A679'));dbms_lob.writeappend(v_lob,30,hextoraw('EBFED1D35CC4B158785B4247CE13CE692E4AF39E02ECE73EE7BFAD4A2F7E'));dbms_lob.writeappend(v_lob,30,hextoraw('23FC495649EE6EACECE6C06558D2C2065F42B1A82E3EBB8D7A14370F66FB'));dbms_lob.writeappend(v_lob,30,hextoraw('61DB0A9EC8A17F956A6904CB3067258939E4D10C1528F4FEBE6454CDF113'));dbms_lob.writeappend(v_lob,30,hextoraw('D1C9FE4BEE564735F0D7F671B48AE23975590EA920E440B98EDC7D40C16F'));dbms_lob.writeappend(v_lob,30,hextoraw('C71F4AFA8BE1C5ACD670DBA1D91C508DB1C68BB12351D0003000F615C478'));dbms_lob.writeappend(v_lob,30,hextoraw('421464505462BD1FC2E48298E376335E9D1A5182D0F26B579D4DD9EB5E12'));dbms_lob.writeappend(v_lob,30,hextoraw('F1249610A032313803B1E6BBAD1FC7F244A18B1181918EB5E45A3B18BEE9'));dbms_lob.writeappend(v_lob,24,hextoraw('20053F4EA2BA2B1B8768D89624838AEA4F439796FB9FFFD9'));update my_images set blobimage = v_lob where id = 1;commit;end;/

Encode_Blob_as_Clob

This function isn't needed within the context of the SDSEMAIL package, but is used in some of the earlier examples that indicate direct UTL_SMTP usage.

CREATE OR REPLACE FUNCTION encode_blob_as_clob(p_blob IN BLOB)

Page 96: Send Mail With SMTP

http://www.experts-exchange.com/Database/Oracle/A_7749-How-to-send-email-attachments-with-Oracle.html?tpn=1

RETURN CLOBIS v_len INTEGER; v_index INTEGER; v_chunk RAW(32767); v_buffer VARCHAR2(32767); v_clob CLOB;BEGIN v_len := DBMS_LOB.getlength(p_blob); v_index := 1;

DBMS_LOB.createtemporary(v_clob, TRUE);

WHILE v_index <= v_len LOOP v_chunk := DBMS_LOB.SUBSTR(p_blob, 57, v_index); v_index := v_index + 57;

v_buffer := UTL_RAW.cast_to_varchar2(UTL_ENCODE.base64_encode(v_chunk));

DBMS_LOB.writeappend(v_clob, LENGTH(v_buffer), v_buffer); END LOOP;

RETURN v_clob;END;