간단한 메일 전송
첨부파일이 없는 메일은 UTL_MAIL.SEND 프로시저를 사용해 보낼 수 있다.
입력
BEGIN
UTL_MAIL.SEND (
sender => 'charieh@hong.com',
recipients => 'charieh@hong.com',
cc => null,
bcc => null,
subject => 'UTL_MAIL 전송 테스트',
message => 'UTL_MAIL을 이용해 전송하는 메일입니다',
mime_type => 'text/plain; charset=euc-kr',
priority => 3,
replyto => 'charieh@hong.com');
EXCEPTION WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE(sqlerrm);
END;
결과
익명 블록이 완료되었습니다.
오류 메시지가 없으니 제대로 전송되었을 것이다. Outlook을 열고 확인해 보자.
UTL_SMTP와 마찬가지로 일반 텍스트가 아닌 HTML 형식의 메일도 보낼 수 있다.
입력
DECLARE
vv_html VARCHAR2(300);
BEGIN
vv_html := '<HEAD>
<TITLE>HTML 테스트</TITLE>
</HEAD>
<BDOY>
<p>이 메일은 <b>HTML</b> <i>버전</i> 으로 </p>
<p> <strong>UTL_MAIL</strong> 패키지를 사용해 보낸 메일입니다. </p>
</BODY>
</HTML>';
UTL_MAIL.SEND (
sender => 'charieh@hong.com',
recipients => 'charieh@hong.com',
cc => null,
bcc => null,
subject => 'UTL_MAIL 전송 테스트2',
message => vv_html,
mime_type => 'text/html; charset=euc-kr',
priority => 1,
replyto => 'charieh@hong.com');
EXCEPTION WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE(sqlerrm);
END;
결과
익명 블록이 완료되었습니다.
HTML 형식의 메일을 보내므로 MIME 타입을 ‘text/html’로 바꾸었다. 또한 priority 매개변수 값을 1로 설정했더니 [그림 18-14]에서 볼 수 있듯이 “중요도가 높음인 메시지를 보냈습니다”라는 메시지가 나타났다. 사용 편의성 측면에서 볼 때 UTL_MAIL이 UTL_SMTP 보다는 훨씬 더 사용하기 쉽다는 점을 느낄 수 있을 것이다.