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

Odstranění událostí z protokolu pošty databáze SQL Server (T-SQL)

Když používáte Database Mail k odesílání e-mailů na SQL Server, můžete použít sysmail_delete_log_sp uložená procedura k odstranění položek z protokolu událostí.

Můžete se rozhodnout smazat všechny události, události založené na jejich zaznamenaném datu (tj. před určitým datem) nebo události založené na typu události.

Zobrazit všechny události

Než začnete nějaké události mazat, možná se na ně budete chtít podívat. Můžete to udělat pomocí sysmail_event_log zobrazit.

SELECT * FROM msdb.dbo.sysmail_event_log;

Smazat staré události

Chcete-li odstranit všechny události, které byly zaznamenány před určitým datem, použijte @logged_before argument.

Příklad:

EXECUTE msdb.dbo.sysmail_delete_log_sp  
    @logged_before = '2020-08-25';

Odstranění událostí určitého typu

Můžete použít @event_type argument k odstranění pouze událostí daného typu.

Zde je příklad smazání všech informačních událostí.

EXECUTE msdb.dbo.sysmail_delete_log_sp  
    @event_type = 'information';

Smazat všechny události

Chcete-li odstranit všechny události, spusťte sysmail_delete_log_sp bez jakýchkoli argumentů.

EXECUTE msdb.dbo.sysmail_delete_log_sp;

Odstranění poštovních položek

Soubor sysmail_delete_log_sp postup je pouze pro mazání záznamů z protokolu. Neodstraní položky pošty z tabulek pošty databáze.

Použijte sysmail_delete_mailitems_sp k odstranění e-mailových položek z tabulek Database Mail.


  1. Odstranění řádků z nadřazených a podřízených tabulek

  2. Jak používat datový typ Postgres JSONB s JPA?

  3. Funkce NLS_COLLATION_NAME() v Oracle

  4. Zahrnout názvy sloupců do výsledků dotazu SQLite