oracle util_mail,ORACLE UTL_MAIL 发送Email 无附件 有附件

【那些ORCALE DB可以做到的事】

如果你的DB是 ORACLE 10g 以上 那么就可以使用 package UTL_MAIL 提供的功能, 发邮件只需要一步就可以做到。 但是前期需要做一些DB的setting,比如grant permission,设置ACL之类的,这里就没有仔细研究setting了,下面来介绍一下我们怎么用

UTL_MAIL提供三种方法发送Email

SEND 普通发送,无附件

SEND_ATTACH_VARCHAR2 字符附件 (我理解就是可以有txt文本的附件)

882113da5f66

txt附件.png

SEND_ATTACH_RAW 字节附件 (还没有试过)

-- 在PROCEDURE中的实现邮件的发送

-- v_message 邮件内容

-- v_subject 邮件标题

-- v_att_message 附件内容

PROCEDURE EMAIL_SP(v_message varchar2,v_subject varchar2,v_att_message varchar2) IS

v_all_message varchar2(20000);

BEGIN

v_all_message :=

'

Dear XXX,

' || v_message ||

'

Thanks and Regards

';

--有文本附件的

SYS.UTL_MAIL.SEND_ATTACH_VARCHAR2(

sender => 'test@'||SYS_CONTEXT('USERENV', 'SERVER_HOST')||'.test.com',

recipients => 'test@test.com',

subject => v_subject,

MESSAGE => v_all_message,

mime_type => 'text/html; charset=us-ascii',

attachment => v_att_message);

--没有附件的

SYS.UTL_MAIL.SEND(sender => 'test@'||SYS_CONTEXT('USERENV', 'SERVER_HOST')||'.test.com',

recipients => 'test@test.com',

subject => v_subject,

MESSAGE => v_all_message,

mime_type => 'text/html; charset=us-ascii');

END EMAIL_SP;

为了拿到环境的server host来区别是在测试环境还是生产环境发送出来的邮件提醒

SYS_CONTEXT('USERENV', 'SERVER_HOST')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值