sql >> Databáze >  >> RDS >> Sqlserver

Odeslat e-mail ze spouštěče v SQL Server (T-SQL)

Pokud zjistíte, že potřebujete automaticky odeslat e-mail při určitých událostech na SQL Serveru, můžete to udělat pomocí spouštěče.

Můžete například automaticky odeslat e-mail, když někdo smaže nebo aktualizuje záznam z tabulky atd.

Chcete-li to provést, musíte vytvořit spouštěč, který obsahuje kód pro odeslání e-mailu při požadované události.

Příklad

Zde je příklad spouštěče, který odešle e-mail, kdykoli někdo smaže záznam z tabulky s názvem 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';

V tomto případě chci, aby byl e-mail odeslán vždy, když někdo smaže řádek, takže používám AFTER DELETE .

Používám sp_send_dbmail uložená procedura na msdb databáze k odeslání e-mailu.

Aby to fungovalo, musíte mít povolenou Database Mail a nakonfigurovanou pro odesílání e-mailů (Database Mail je řešení SQL Serveru pro odesílání e-mailů). Pokyny, jak to provést, najdete v části Jak odeslat e-mail ze serveru SQL.


  1. Přílohy v Oracle Applications R12

  2. Skryté funkce SQL Server

  3. Jak změnit národní prostředí při formátování čísel v PostgreSQL

  4. Jak MAKEDATE() funguje v MariaDB