2010-03-09 104 views
3

我對數據庫相對來說比較新,所以請原諒我,如果我的查詢聽起來微不足道。 我需要將批量電子郵件發送到特定表格中列出的所有聯繫人。電子郵件的正文存儲在一個.doc文件中,以親愛的先生_______開頭。 SQL服務器將讀取該文件,並將空白處的聯繫人姓氏附加到該姓氏的相應電子郵件地址。有關如何繼續這個的任何想法?從SQL Server 2008發送批量電子郵件

任何見解,建議,提示將不勝感激。

謝謝!

回答

6

數據庫=數據庫。存儲數據。請不要讓你可憐的數據庫發出數以千計的電子郵件。這不是它所要求的。

編寫一個這樣做的應用程序。多線程。使用數據庫中的數據並在其中存儲結果/狀態。

4

我不建議使用數據庫來發送垃圾郵件,但你可以通過使用該數據庫發送電子郵件:

EXEC msdb.dbo.sp_send_dbmail ...

我不知道這是如何影響您的實際數據庫性能(SELECT/INSERT/UPDATE/DELETE),但這不是我的呼叫。

http://technet.microsoft.com/en-us/library/ms190307.aspx

sp_send_dbmail [ [ @profile_name = ] 'profile_name' ] 
    [ , [ @recipients = ] 'recipients [ ; ...n ]' ] 
    [ , [ @copy_recipients = ] 'copy_recipient [ ; ...n ]' ] 
    [ , [ @blind_copy_recipients = ] 'blind_copy_recipient [ ; ...n ]' ] 
    [ , [ @subject = ] 'subject' ] 
    [ , [ @body = ] 'body' ] 
    [ , [ @body_format = ] 'body_format' ] 
    [ , [ @importance = ] 'importance' ] 
    [ , [ @sensitivity = ] 'sensitivity' ] 
    [ , [ @file_attachments = ] 'attachment [ ; ...n ]' ] 
    [ , [ @query = ] 'query' ] 
    [ , [ @execute_query_database = ] 'execute_query_database' ] 
    [ , [ @attach_query_result_as_file = ] attach_query_result_as_file ] 
    [ , [ @query_attachment_filename = ] query_attachment_filename ] 
    [ , [ @query_result_header = ] query_result_header ] 
    [ , [ @query_result_width = ] query_result_width ] 
    [ , [ @query_result_separator = ] 'query_result_separator' ] 
    [ , [ @exclude_query_output = ] exclude_query_output ] 
    [ , [ @append_query_error = ] append_query_error ] 
    [ , [ @query_no_truncate = ] query_no_truncate ] 
    [ , [ @mailitem_id = ] mailitem_id ] [ OUTPUT ] 

我不知道如何可以改變從SQL .doc文件,所以您可能需要運行這個作爲從Word郵件合併,使用SQL Server作爲數據源:

http://msdn.microsoft.com/en-us/library/aa140183%28office.10%29.aspx

4

SQL Server不是郵件服務器。

您可以導出信息並使用外部提供程序發送大容量郵件(如果有幾千封郵件要發送)或編寫讀取數據的應用程序,用值替換佔位符並使用您的郵件發送郵件公司SMTP服務器。它將在C#.NET中大約200行代碼,所以它非常簡單。

2

我以前用過SQL Server 2000的SQLAnswersMail產品,它提供了很多功能,比如郵件合併。

是的,SQL Server是一個數據庫,但我發現它非常適合託管數據和調度作業以生成電子郵件(我們並未在SQL Server本身上運行郵件中繼)。它在向收件人發送自定義查詢結果方面也做得很好。

我不確定它是否被SQL Server 2005引入的所有改進的電子郵件處理所過時。SQL Server 2000無法使用舊的基於MAPI的配置文件處理的主要要求是能夠從多個郵箱地址。