先上最重要的干货

发送邮件正文及主题的时候一定要使用convert重新编码

主题:

utl_smtp.write_raw_data(l_mail_conn,
utl_raw.cast_to_raw(convert('Subject:' || p_subject || utl_tcp.crlf,
'ZHS16GBK')));

正文内容:

utl_smtp.write_raw_data(l_mail_conn,
utl_raw.cast_to_raw(convert(p_text_msg,
'ZHS16GBK')));

附件类型及头信息

utl_smtp.write_raw_data(l_mail_conn,
utl_raw.cast_to_raw(convert('Content-Type: ' || p_attach_mime || '; name="' ||
p_attach_name || '"' || utl_tcp.crlf,
'ZHS16GBK')));

附件名称

utl_smtp.write_raw_data(l_mail_conn,
utl_raw.cast_to_raw(convert('Content-Disposition: attachment; filename="' ||
p_attach_name || '"' || utl_tcp.crlf || utl_tcp.crlf,
'ZHS16GBK')));

附件路径:

l_file := convert(l_file,
'ZHS16GBK');

附件 send mail with attachment

(顺便鄙视一下博客园,作为一个标榜为技术博客的园子,竟然对附件的支持这么弱,仅IE能下载,chrome和ff都不能下载。并且邮件链接地址还是我自己用F12获取的,不知道是不是我不会用。)

参考资料:

Email From Oracle PL/SQL (UTL_SMTP)

FTP From PL/SQL

How to FTP with Oracle PL/SQL

Sending Mail with Multiple Attachment In PL/Sql(发送邮件带多个附件)

使用UTL_SMTP发送中文邮件及使用UTL_TCP从附件服务器获取中文附件的更多相关文章

  1. 利用Oracle数据库的UTL_SMTP发送HTML 邮件

    Ok, that looks hard, but if you use this procedure I wrote, its really quite easy, it does all of th ...

  2. 使用Quartz框架定时发送预警邮件

    1.  Quartz定时发送预警邮件 1.1.   需求及实现思路 定时查询库存预警信息,一旦存在库存预警的商品,则发邮件通知相关人员 1.2.   Quartz框架 Quartz是OpenSymph ...

  3. Oracle PLSQL通过SMTP发送E-MAIL邮件代码

    登录到SMTPserver发送邮件,支持HTML CREATE OR REPLACE PROCEDURE send_mail(        p_recipient VARCHAR2, -- 邮件接收 ...

  4. 【Java EE 学习 21 下】【使用java实现邮件发送、邮件验证】

    一.邮件发送 1.邮件发送使用SMTP协议或者IMAP协议,这里使用SMTP协议演示. SMTP协议使用的端口号:25 rfc821详细记载了该协议的相关信息 (1)使用telnet发送邮件(使用12 ...

  5. python发送各类邮件的主要方法

    更多详见: http://www.w3cschool.cc/python/python-email.html python中email模块使得处理邮件变得比较简单,今天着重学习了一下发送邮件的具体做法 ...

  6. 九、Python发送QQ邮件(SMTP)

    看了廖雪峰老师的教程: 一封电子邮件的旅程就是 发件人 -> MUA -> MTA -> MTA -> 若干个MTA -> MDA <- MUA <- 收件人 ...

  7. javaMail 邮件发送和接收示例,支持正文图片、html、附件(转)

    转自:https://blog.csdn.net/star_fly4/article/details/52037587 一.RFC882文档简单说明 RFC882文档规定了如何编写一封简单的邮件(纯文 ...

  8. (转)Django发送html邮件

    本文转自http://blog.csdn.net/yima1006/article/details/8991145 send_mail(subject, message, from_email, re ...

  9. .net 发送qq邮件

    最近开发一个项目,需要给客户发送报告邮件,在开发中遇到本地调试发送邮件一切正常,但当部署到服务器上的时候,一直返回“发送失败”,在此记录,以免以后采坑 webapi 端代码: /// <summ ...

随机推荐

  1. ACM题目————A Knight's Journey

    Description BackgroundThe knight is getting bored of seeing the same black and white squares again a ...

  2. cnats 使用

    1. 准备 yum install cmakeyum install gcc gcc-c++yum install ncurses ncurses-develyum install openssl o ...

  3. 20145335郝昊《网络攻防》Exp5 MS08_067漏洞测试

    20145335郝昊<网络攻防>Exp5 MS08_067漏洞测试 实验内容 了解掌握metasploit平台的一些基本操作,能学会利用已知信息完成简单的渗透操作. 漏洞MS08_067: ...

  4. Android实践项目汇报(三)

    Google天气客户端 本周学习计划 调试代码使之成功运行并实现天气预报功能. 实际完成情况 由于google取消api接口服务,天气源的传输.所以我换了一个使用 haoserver API接口的程序 ...

  5. BZOJ5131: [CodePlus2017年12月]可做题2

    BZOJ没有题面,差评 洛谷的题目链接 题解 其实这题很久之前就写了,也想写个题解但是太懒了,咕到了今天 在typora写完题解不想copy过来再改格式了,于是直接贴截图qwq #include &l ...

  6. NS3 使用NS3工具PyViz

    官方文档 跑了一个样例(first.py): 由于 NetAnim 对我实在是有点不友好,在 PyViz 和 NetAnim 之间,我倾向前者.后者需要生成.xml文件,相比前者较为麻烦. 安装过程: ...

  7. React Native 的组件之底部导航栏 TabBarIOS(一)

    import React,{Component}from 'react'; import { AppRegistry, StyleSheet, Text, View, TabBarIOS, } fro ...

  8. Python的函数参数传递

    a = 1 def fun(a): a = 2 fun(a) print a # 1 a = [] def fun(a): a.append(1) fun(a) print a # [1]

  9. mysql 开启远程访问

    # vi /etc/mysql/my.cnf修改 bind-address = 127.0.0.1  为  bind-address = 0.0.0.0 修改完成后重启mysql服务 # sudo / ...

  10. Python day19 模块介绍3(sys,json,pickle,shelve,xml)

    1.sys模块 import sys sys.path()#打印系统path sys.version()#解释程序版本信息 sys.platform()#系统平台 sys.exit(0)#退出程序 c ...