数据库邮件是从 SQL Server数据库引擎中发送电子邮件的企业解决方案。经过使用数据库邮件,数据库应用程序能够向用户发送电子邮件。邮件中能够包含查询结果,还能够包含来自网络中任何资源的文件。
数据库
一、数据库邮件配置服务器
使用SQL Server Management Studio链接到数据库服务器后,可按下面示意图一步步配置数据库邮件。网络
(1)、在SQL Server Management Studio的数据库实例的管理菜单下,选中数据库邮件菜单,而后邮件选择:配置数据库邮件。ide
(2)、在选择配置任务页面,选择经过执行如下任务来安装数据库邮件。测试
(3)、在新建配置文件界面,首先录入配置文件名及说明信息,而后点击下图所示“添加”按钮,开始添加当前配置文件对应的SMTP帐户。网站
(4)、按下图所示,录入SMTP帐户信息,其中最重要的是服务器名称选项。若使用当前流行的邮件服务提供商的SMTP服务,则通常还须要在基自己份验证部分录入邮箱帐户身份信息。spa
(5)、在上一步添加完帐户信息并点击肯定后,新增的帐户信息将列示在下图的SMTP帐户列表中。一个配置文件是能够和多个帐户关联的,于是能够重复前面步骤添加其它SMTP帐户信息。3d
(6)、在该步骤选择“公共”复选框及“默认配置文件”。代理
(7)、此步骤主要是配置数据库邮件参数,若无特殊要求,默认便可。blog
(8)、下图展现刚配置的信息。
(9)、系统开始根据前面的配置信息自动配置系统。若是一切ok,将会展现相似下图信息,点击关闭完成配置。
(10)、按照上述步骤,配置好数据库邮件后,可进行数据库邮件测试,以确认配置是否彻底正确。在SQL Server Management Studio的数据库实例的管理菜单下,选中数据库邮件菜单,而后邮件选择:发送测试电子邮件…。
(11)、在弹出的测试邮件发送配置界面,维护好相关信息后,点击“发送测试电子邮件”功能按钮开始发生邮件。
(12)、系统对测试电子邮件进行列队以进行发送。
(13)、若是一切顺利,过一会,通常为1分钟左右,将能够在邮箱内容收到一份主题为:“数据库邮件测试”的邮件,以下图所示。
二、数据库邮件应用
应用业务场景1:业务数据库数据达到必定数量级后,进行邮件发送提醒。
使用SQL Server Management Studio链接到数据库服务器后,可按下面示意图一步步配置以建立一个做业,经过做业执行特定语句,进行邮件发送。
(1)、在SQL Server Management Studio的数据库实例的管理菜单下,选中SQL Server代理→做业菜单,右击做业菜单,而后点击“新建做业”。
(2)、在做业属性/常规属性页,维护好做业的名称等信息。
(3)、在做业属性/步骤属性页,维护做业步骤及做业命令。
本文示例SQL:
USE msdb
GO
DECLARE @cnt INT;
DECLARE @emailBody VARCHAR(4000);
SELECT @cnt=COUNT(*) FROM ng0002.dbo.secuser;
IF @cnt>100
BEGIN
SELECT @emailBody='数据库用户表记录数已达:'+convert(varchar,@cnt) ;
Exec dbo.sp_send_dbmail
@profile_name='SQLMailConfig',
@recipients='subscriber@126.com',
@subject='用户数预警',
@body=@emailBody
END
(4)、在做业属性/计划属性页,维护做业的执行计划。
(5)、待数据库做业成功执行后,将会收到一份相似下图的邮件:
应用业务场景2:将数据库查询结果以附件形式投递到指定邮箱
USE msdb
GO
Exec msdb.dbo.sp_send_dbmail
@profile_name='SQLMailConfig',
@recipients='subscriber@126.com',
@query='select logid,u_name from ng0002.dbo.secuser',
@subject='用户数预警',
@body='查询结果,详见附件',
@attach_query_result_as_file =1,--查询结果以附件形式发送
@query_p_w_upload_filename ='查询结果.Txt'--邮件附件名称
GO
PS:
数据库邮件发送存储(sp_send_dbmail)详细技术参数可参考如下网站:http://msdn.microsoft.com/zh-cn/library/ms190307.aspx