SQL Serverで特定のイベントが発生したときに自動的に電子メールを送信する必要がある場合は、トリガーを介してこれを行うことができます。
たとえば、誰かがテーブルからレコードを削除または更新したときに、自動的にメールを送信できます。
これを行うには、必要なイベント時にメールを送信するためのコードを含むトリガーを作成する必要があります。
例
これは、誰かがCats
というテーブルからレコードを削除するたびにメールを送信するトリガーの例です。 :
CREATE TRIGGER trg_deleted_cat
ON Cats
AFTER DELETE
AS
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'DB Admin Profile',
@recipients = '[email protected]',
@body = 'Oh no... somebody just deleted a cat!!!',
@subject = 'Warning: This email may distress the reader';
この場合、誰かが行を削除するたびにメールを送信したいので、AFTER DELETE
を使用します 。
sp_send_dbmail
を使用しています msdbのストアドプロシージャ 電子メールを送信するデータベース。
これを機能させるには、データベースメールを有効にして、電子メールを送信するように構成する必要があります(データベースメールは、電子メールを送信するためのSQL Serverのソリューションです)。これを行う方法については、SQLServerから電子メールを送信する方法を参照してください。