6

xp_sendmailsp_send_dbmailprocの違いは何ですか?どちらも、指定された受信者に、クエリ結果セットの添付ファイルを含む電子メールメッセージを送信します。

違いはなんですか?

4

3 に答える 3

16

xp_sendmailOutlook などの MAPI クライアントがサーバーにインストールされている必要があります。これは、SQL Server 2000 以前の唯一のオプションです。

sp_send_dbmailSQL Server 2005 以降用に追加されたシンプルな SMTP ソリューションです。

sp_send_dbmailはるかに優れています。

于 2009-08-01T13:21:40.400 に答える
7

両者のもう 1 つの違いは、トランザクションがロールバックされると、sp_send_dbmail() を使用して送信された電子メール メッセージがロールバックされる (送信されない) ことです。これは、xp_sendmail() を使用して送信された電子メールでは発生しません。

そのため、トランザクションの最終結果に関係なく電子メール メッセージを送信したい場合は、xp_sendmail() を使用する必要があります。

SP が処理を完了できなかった場合にユーザーに通知するために電子メールを送信していました。もちろん、そのイベントではトランザクションをロールバックしていました。sp_send_dbmail() に切り替えると、ロールバックされていたトランザクション (電子メール通知を取得したかったトランザクション) が電子メールの送信を停止しました。

于 2011-03-02T21:03:10.290 に答える