PROCEDURE XXZZ_MAIL_TEST (txt VARCHAR2)
IS
--sender's email address
sendoraddress
VARCHAR2(30) := 'xxx@xxx.com';
--receiver 's email address
receiveraddress
VARCHAR2(30) := 'xxx@xxx.com';
--mail server's name or ip address
emailserver
VARCHAR2(30) := '';
port
NUMBER
:= 25;
conn
utl_smtp.connection;
crlf
VARCHAR2(2) := CHR
(13) || CHR (10);
contentmsg
VARCHAR2(60) :=
'hello';
mesg
VARCHAR2(4000);
mesg_body
VARCHAR2(4000);
p_user varchar2(30) :=
'xxxfeder'; --
登录SMTP服务器的用户名
p_pass varchar2(30) :=
'********'; --
登录SMTP服务器的密码
BEGIN
conn := utl_smtp.open_connection (emailserver,
port);
utl_smtp.ehlo (conn, emailserver);
utl_smtp.command(conn, 'AUTH
LOGIN');
utl_smtp.command(conn,
utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw(p_user))));
utl_smtp.command(conn,
utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw(p_pass))));
utl_smtp.mail (conn, sendoraddress);
utl_smtp.rcpt (conn, receiveraddress);
mesg := 'Content-Type: text/plain; Charset=GB2312'
||
crlf
||
'Date:' ||
TO_CHAR (SYSDATE, 'dd Mon yy hh24:mi:ss') ||
crlf
||
'From:' ||
sendoraddress ||
crlf
||
'Subject: Sending Mail From Database' ||
crlf
||
'To: '
||
receiveraddress ||
crlf
||
'Content-Type: text/plain; Charset=GB2312' ||
crlf
||
''
||
crlf
||
txt
||
crlf;
utl_smtp.data (conn, mesg);
utl_smtp.quit (conn);
END;