SQL Server 2014でSQL Serverジョブから電子メールを送信する方法。Windowsサービスの代わりにストアドプロシージャを介して電子メール通知を実装したい。
この機能を利用するには、まずSQL ServerでDBメールを構成する必要があります。以下のリンクは、DBメール設定の目的のレファレンスとして使用できます。
https://www.brentozar.com/blitz/database-mail-configuration/
DBメールを設定したら、SQL Serverエージェントでデータベースメールを有効にできます。同じリンクでその方法を説明しています。 SQL Serverエージェントで有効になったら、SQL Serverエージェントサービスを再起動して有効にする必要があります。
それでおしまい。これで、msdb.dbo.sp_send_dbmail
SP=を使用して、SQL Serverエージェントジョブまたはストアドプロシージャを使用して電子メールを送信できます。
最初にデータベースメールアカウント、データベースメールプロファイルをセットアップし、SPで以下のコードを使用します。
EXEC msdb.dbo.sp_send_dbmail
@profile_name='Mymail',
@recipients='[email protected]',
@subject = 'Mail subject' ,
@body = 'Mail body' ,
@file_attachments = 'G:\BACKUP\data\log.txt' --Path to attachment if any
その他のオプションについては、MSDNをいつでも参照できます