Wenn Sie bei bestimmten Ereignissen in SQL Server automatisch eine E-Mail senden müssen, können Sie dies über einen Trigger tun.
Beispielsweise könnten Sie automatisch eine E-Mail senden, wenn jemand einen Datensatz aus einer Tabelle löscht oder aktualisiert usw.
Dazu müssen Sie einen Auslöser erstellen, der den Code zum Senden der E-Mail bei dem erforderlichen Ereignis enthält.
Beispiel
Hier ist ein Beispiel für einen Trigger, der eine E-Mail sendet, wenn jemand einen Datensatz aus einer Tabelle namens Cats
löscht :
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';
In diesem Fall möchte ich, dass die E-Mail gesendet wird, wenn jemand eine Zeile löscht, also verwende ich AFTER DELETE
.
Ich verwende den sp_send_dbmail
gespeicherte Prozedur auf der msdb Datenbank, um die E-Mail zu senden.
Damit dies funktioniert, müssen Sie Database Mail aktiviert und konfiguriert haben, um E-Mails zu senden (Database Mail ist die Lösung von SQL Server zum Senden von E-Mails). Anweisungen dazu finden Sie unter So senden Sie E-Mails von SQL Server.