v_msg VARCHAR2 (4000);
v_msg := '中文测试from Bugtrace test email.';
UTL_SMTP.write_raw_data (v_conn, UTL_RAW.cast_to_raw (v_msg));
这样OK阿~
v_msg := '中文测试from Bugtrace test email.';
UTL_SMTP.write_raw_data (v_conn, UTL_RAW.cast_to_raw (v_msg));
这样OK阿~
begin
return twd_base64.encode( utl_raw.cast_to_raw(i_str) );
end;
-- EncodeAddress
function EncodeAddress(i_str varchar2) return varchar2 is
begin
utl_smtp.data(conn, 'MIME-Version: 1.0' ||crlf||'Content-type: text/html;Charset=GB2312' || crlf||EncodeBase64('您好!'));
utl_smtp.write_data(c, 'Content-Type: text/plain; charset="GB2312"'||utl_tcp.CRLF);
utl_smtp.write_data(c, utl_tcp.CRLF);
create or replace procedure SP_MAIL_SHARE
IS
SendorAddress Varchar2(30) := '[email protected]';
EmailServer varchar2(30) := 'smtp.21cn.com';
Port number := 25;
conn utl_smtp.CONNECTION;
crlf VARCHAR2( 2 ):= CHR( 13 ) || CHR( 10 );
mesg VARCHAR2( 4000 char );mesg_body0 varchar2(4000 char)
:= '<html>
<head>
<title> </title>
</head>
<body bgcolor="#FFFFFF" link="#000080">
<table cellspacing="0" cellpadding="0" width="100%">';
font_red varchar2(100 char):='<font size="2" face="Arial" color="#ff0000" >';
font_blue varchar2(100 char):='<font size="2" face="Arial" color="#0000FF" >';
mesg_body1 varchar2(300 char):='谢谢您的支持.<br/><br/>
</font>
</body>
</html>';
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('[email protected]'))));
utl_smtp.command(conn,utl_raw.cast_to_varchar2(utl_encode.base64_encode(utl_raw.cast_to_raw('password'))));
utl_smtp.mail( conn, SendorAddress);
utl_smtp.rcpt( conn, '[email protected]');
mesg:='' || crlf ||mesg_body0||FONT_RED||mesg_body1;
utl_smtp.open_data(conn);
utl_smtp.write_data(conn,'From:'||SendorAddress||utl_tcp.crlf);
utl_smtp.write_data(conn,'To:[email protected]' || utl_tcp.crlf );
utl_smtp.write_data(conn,'Date:'||to_char (sysdate, 'hh24:mi:ss dd-Mon-yyyy')||utl_tcp.crlf);
utl_smtp.write_data(conn,'Subject:Not approved over three days Alert'||utl_tcp.crlf);
utl_smtp.write_data(conn, 'MIME-Version: 1.0' || chr(13) || chr(10));
utl_smtp.write_data(conn, 'Content-type: text/html;Charset=GB2312;' || chr(13) || chr(10));
utl_smtp.write_data(conn, 'Content-Transfer-Encoding: base64' || chr(13) || chr(10));
utl_smtp.write_data(conn, chr(13) || chr(10));
utl_smtp.write_raw_data(conn, utl_encode.base64_encode(utl_raw.cast_to_raw(mesg)));
utl_smtp.write_data(conn, CRLF);
utl_smtp.close_data(conn);
utl_smtp.quit( conn );
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
END SP_MAIL_SHARE;