嗨,我有2张桌子,它们的输出如下
table1: userID Email address Rakesh rakesh.k@xyz.com hari hari.m@xyz.com abc abc@xyz.com table2: subject1 subject2 subject3
我希望查询从abc(我以abc登录到我的网站)向Rakesh或hari(基于我从jsp所做的选择)发送电子邮件,主题为表2中的任何一个,并且应附加字符串“ relocated”
请帮我坦克
要从数据库发送电子邮件,您需要使用UTIL_SMTP或其他一些电子邮件协议进行操作。用于UTIL_SMTP创建程序如下
UTIL_SMTP
create or replace PROCEDURE send_mail (P_SENDER in varchar2, P_RECIPIENT in varchar2, P_CC in varchar2, P_SUBJECT in varchar2, P_MESSAGE in varchar2) is mailhost varchar2(30) := 'xxx.xxx.xx.xx'; mail_conn utl_smtp.connection; crlf varchar2(2) := CHR(13)||CHR(10); mesg varchar2(4000); BEGIN mail_conn := utl_smtp.open_connection(mailhost,25); mesg := 'Date: '||to_char(sysdate,'dd Mon yy hh24:mi:ss' )||crlf|| 'FROM: '||P_SENDER||'>'||crlf||'Subject: '||P_SUBJECT||crlf|| 'To: '||P_RECIPIENT||crlf|| 'Cc: '||P_CC||crlf||crlf||P_MESSAGE; utl_smtp.helo(mail_conn,mailhost); utl_smtp.mail(mail_conn,P_SENDER); utl_smtp.rcpt(mail_conn,P_RECIPIENT); utl_smtp.rcpt(mail_conn,P_CC); utl_smtp.data(mail_conn,mesg); utl_smtp.quit(mail_conn); END send_mail; /
你可以SMTP_HOST和SMTP_PORT您的系统管理员。SMTP_PORT默认为25。一旦有了,您可以执行您的程序
SMTP_HOST
SMTP_PORT
exec send_mail('abc@xyz.com', 'rakesh.k@xyz.com', 'hari.k@xyz.com', '<Your subject>', '<Your message>');
如果要调用从JSP发送电子邮件的过程,可以调用该过程并将参数从JSP传递到过程。如果要使用select语句发送电子邮件,请将过程包装在一个函数中,然后将函数执行为
select <yourfunction(params)> from dual