【发布时间】:2011-12-06 21:30:39
【问题描述】:
我们有一个保存为 BLOB 文件的表
我编写了一个代码,将这些文件作为附件通过电子邮件发送!
到目前为止一切正常,但程序无法读取文件(EXCEL、PDF、...等等),只有文本文件和 excel 会打开,但在出现一些错误消息后,PDF 将无法在以下位置打开全部!
这是有问题的代码部分!
utl_smtp.write_data( l_connection, '--'|| l_boundary || utl_tcp.crlf);
utl_smtp.write_data( l_connection, 'Content-Type: application/octet-stream' || utl_tcp.crlf);
utl_smtp.write_data( l_connection, 'Content-Disposition: attachment; filename="' || V_NAME || '"' || utl_tcp.crlf);
utl_smtp.write_data( l_connection, 'Content-Transfer-Encoding: base64' || utl_tcp.crlf );
utl_smtp.write_data( l_connection, utl_tcp.crlf );
v_length := dbms_lob.getlength(V_BLOB_CONTENT);
while v_offset < v_length loop
dbms_lob.read( V(i).BLOB_CONTENT, v_buffer_size, v_offset, v_raw );
utl_smtp.write_raw_data( l_connection, utl_encode.base64_encode(v_raw) );
utl_smtp.write_data( l_connection, utl_tcp.crlf );
v_offset := v_offset + v_buffer_size;
end loop while_loop;
utl_smtp.write_data( l_connection, utl_tcp.crlf );
有什么建议吗?
【问题讨论】:
标签: oracle plsql smtp plsqldeveloper