Korzystając z poczty bazy danych do wysyłania wiadomości e-mail w programie SQL Server, można użyć sysmail_delete_log_sp
procedura składowana do usuwania elementów z dziennika zdarzeń.
Możesz wybrać usunięcie wszystkich wydarzeń, wydarzeń na podstawie ich zarejestrowanych dat (tj. przed określoną datą) lub wydarzeń na podstawie typu wydarzenia.
Wyświetl wszystkie wydarzenia
Zanim zaczniesz usuwać jakiekolwiek wydarzenia, warto się im przyjrzeć. Możesz to zrobić za pomocą sysmail_event_log
widok.
SELECT * FROM msdb.dbo.sysmail_event_log;
Usuń stare wydarzenia
Aby usunąć wszystkie zdarzenia, które zostały zarejestrowane przed określoną datą, użyj @logged_before
argument.
Przykład:
EXECUTE msdb.dbo.sysmail_delete_log_sp
@logged_before = '2020-08-25';
Usuń zdarzenia określonego typu
Możesz użyć @event_type
argument, aby usunąć tylko zdarzenia danego typu.
Oto przykład usuwania wszystkich zdarzeń informacyjnych.
EXECUTE msdb.dbo.sysmail_delete_log_sp
@event_type = 'information';
Usuń wszystkie wydarzenia
Aby usunąć wszystkie zdarzenia, wykonaj sysmail_delete_log_sp
bez żadnych argumentów.
EXECUTE msdb.dbo.sysmail_delete_log_sp;
Usuwanie elementów poczty
sysmail_delete_log_sp
procedura służy wyłącznie do usuwania wpisów z logu. Nie usuwa elementów poczty z tabel bazy danych Poczta.
Użyj sysmail_delete_mailitems_sp
aby usunąć elementy wiadomości e-mail z tabel poczty bazy danych.