Om du märker att du behöver skicka ett e-postmeddelande automatiskt efter vissa händelser som inträffar i SQL Server, kan du göra detta via en trigger.
Du kan till exempel automatiskt skicka ett e-postmeddelande när någon tar bort eller uppdaterar en post från en tabell, etc.
För att göra detta måste du skapa en utlösare som inkluderar kod för att skicka e-postmeddelandet vid den nödvändiga händelsen.
Exempel
Här är ett exempel på en utlösare som skickar ett e-postmeddelande när någon tar bort en post från en tabell som heter 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';
I det här fallet vill jag att e-postmeddelandet ska skickas när någon raderar en rad, så jag använder AFTER DELETE
.
Jag använder sp_send_dbmail
lagrad procedur på msdb databas för att skicka e-postmeddelandet.
För att detta ska fungera måste du ha Database Mail aktiverat och konfigurerat för att skicka e-post (Database Mail är SQL Servers lösning för att skicka e-post). Se Hur man skickar e-post från SQL Server för instruktioner om hur man gör detta.