數據庫郵件是從 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