器或一个存储过程中发送,并且通过SQLServer提供的任务和警告等功能,可以根据需要在不同的时间和情况下发送。
----SQLMail工作流程
----SQLMail工作流程主要分为邮件收、发两个过程。
----在SQLServer内可以通过一定方法,调用扩展存储过程xp_s
endmail,将收信人电子邮件地址,标题,信的内容等以参数的形式传送给xp_sendmail,由它通过客户端MAPI接口将发送邮件任
务交给如MicrosoftExchangeClient或Outlook97等邮件客户端程序,最终通过邮件服务将邮件发送出去。
----收邮件的过程与此相似。在SQLServer端定期或手工调用xp_readmail扩展存储过程,通过客户端MAPI接口将存放在邮件服务器或客户端的邮件及其他信息读入SQL变量中,用来满足特定的处理需要。
配置SQLMail
----配置SQLMail的首要条件是要有一个电子邮件帐户,不管是局域网内的MSExchangeServer或MSMail3.x的邮件帐户,还是Internet上的SMTP,POP3等邮件帐户均可。具体配置可分为以下几步:
----1.为SQLServer创建一个NT域用户帐号,要求具有本地管理员组的权限。仔细设置帐号口令,保证口令足够复杂,且设成口令永不过期和用户不得更改口令。
----2.双击控制面板的服务图标,找到MSSQLServer的启动设置,将UseSystemAccount改为UseThisAccount,将刚才建立的NT帐号和口令输入。重新启动SQLServer。
----3.在安装SQLServer的服务器上以与启动SQLServer相同的NT帐号登录,然后安装支持MAPI接口的邮件客户端程序,如MS
ExchangeClient和Outlook97。
----4.打开控制面板的电子邮件选项,建立一个配置文件(Profile)。用这个配置文件启动邮件客户端程序,反复检验直至能正常收发邮件。
----5.从SqlEnterpriserManager中,点中相应的服务器图标,从
Server菜单中选SQLMail/Configure,将在第4步中建立的配置文件名输入。
----6.从SqlEnterpriserManager中,点中相应的服务器图标,从
Server菜单中选SQLMail/Start,如果SqlMail的图标变为绿色,则SQ
LMail成功启动。
----常用的SQLMail扩展存储过程
xp_sendmail@recipient=recipient
[;recipient2;[...;recipientn]]
[,@message=message]
[,@query=query]
[,@attachments=attachments]
[,@copy_recipients=recipient
[;recipient2;[...;recipientn]]]
[,@blind_copy_recipients=recipient
[;recipient2;[...;recipientn]]]
[,@subject=subject]
[,@type=type]
[,@attach_results={‘true‘|‘false‘}]
[,@no_output={‘true‘|‘false‘}]
[,@no_header={‘true‘|‘false‘}]
[,@width=width]
[,@separator=separator]
[,@echo_error={‘true‘|‘false‘}]
[,@set_user=user]
[,@dbuse=dbname]
----此存储过程通过客户端MAPI接口发送邮件,内容可以是文本串,附加文件或SQL语句的执行结果集。
xp_findnextmsg[@msg_id=msg_id[OUTPUT]]
[,@type=type]
[,@unread_only={‘true‘|‘false‘}])
----此存储过程在邮箱中查找特定的邮件,并返回一封邮件的消息ID。
xp_readmail([@msg_id=msg_id][,@type=type[OUTPUT]]
[,@peek={‘true‘|‘false‘}]
[,@suppress_attach={‘true‘|‘false‘}]
[,@originator=@senderOUTPUT]
[,@subject=@subject_lineOUTPUT]
[,@message=@body_of_messageOUTPUT]
[,@recipients=@recipient_listOUTPUT]
[,@cc_list=@cc_listOUTPUT]
[,@bcc_list=@bcc_listOUTPUT]
[,@date_received=@dateOUTPUT]
[,@unread={‘true‘|‘false‘}]
[,@attachments=@temp_file_pathsOUTPUT])
[,@skip_bytes=@bytes_toskipOUTPUT]
[,@msg_length=@length_in_bytesOUTPUT])
.
分页: [1] [2]
- 上一篇:中软邮件系统解决方案
- 下一篇:KMS搭配ClamAV构建防毒邮件系统