从Oracle存储过程Oracle 11g发送邮件

时间:2014-03-28 05:20:42

标签: sql oracle email oracle11g

我正在尝试使用utl_mail发送邮件,使用端口25或587发送smtp服务器smtp.gmail.com。

如果我使用端口25,获取错误,必须先使用STARTTLS命令,然后使用587进入无限循环。

我的代码段位于

之下
create or replace 
PROCEDURE TEST_UTL_MAIL AS 
BEGIN
  utl_mail.send(
   sender => 'xxx@gmail.com',
    recipients => 'xxx@gmail.com',
   subject => 'Testing utl_mail',
    message => 'The receipt of this email means'
 );
 EXCEPTION
  WHEN OTHERS THEN
  raise_application_error(-20001,'The following error has occured: ' || sqlerrm);
   END;

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可能有访问控制列表问题。代码报告的错误是什么? 您也可以提供此查询的输出(您需要提供用户参数):
SELECT host, lower_port, upper_port, acl, DECODE( DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE_ACLID(aclid, '&USER', 'connect'), 1, 'GRANTED', 0, 'DENIED', null) privilege FROM dba_network_acls ;