2

我們需要通過SMTP從存儲過程(SQL Server 2012)發送電子郵件的功能。從SQL Server 2012存儲過程發送電子郵件

我們需要保留對電子郵件「FROM」地址和「顯示名稱」的控制權,所以我相信這會排除數據庫郵件,因爲它們在創建的配置文件中很難設置?)

還有什麼其他選擇可供我們使用?

感謝保羅

UPDATE:難道是愚蠢的,在代碼中,創建所需的臨時數據庫郵件配置文件,用它來發送一次所需的電子郵件,然後刪除個人資料?

回答

4

從2008年起,您可以創建基本配置文件,然後使用@from_address/reply_to覆蓋詳細信息;

EXEC msdb.dbo.sp_send_dbmail 
    @profile_name = 'my profile', 
    ... 
    @subject = 'The Spice must flow', 
    @from_address = '"Bob Smith" <[email protected]>', 
    @reply_to = '[email protected]' 
0

這裏有一個選項。創建一個SSIS包。

允許您的存儲過程將電子郵件信息排隊到數據庫表中。您的SSIS包將查詢此表並根據表中每行的表值發送電子郵件,並在發送電子郵件後刪除每個記錄(或將其標記爲已處理,以便您保留已發送電子郵件的記錄)。然後安排一個SQL作業運行你的軟件包,以適應你的需求。

相關問題