sql >> Base de Datos >  >> RDS >> Sqlserver

Eliminar eventos del registro de correo de la base de datos en SQL Server (T-SQL)

Cuando usa el Correo electrónico de base de datos para enviar correos electrónicos en SQL Server, puede usar el sysmail_delete_log_sp procedimiento almacenado para eliminar elementos del registro de eventos.

Puede elegir eliminar todos los eventos, eventos basados ​​en su fecha de registro (es decir, antes de una fecha determinada) o eventos basados ​​en el tipo de evento.

Ver todos los eventos

Antes de comenzar a eliminar eventos, es posible que desee echarles un vistazo. Puede hacer esto con el sysmail_event_log ver.

SELECT * FROM msdb.dbo.sysmail_event_log;

Eliminar eventos antiguos

Para eliminar todos los eventos que se registraron antes de una fecha determinada, use @logged_before argumento.

Ejemplo:

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

Eliminar eventos de cierto tipo

Puede usar el @event_type argumento para eliminar solo eventos de un tipo dado.

Este es un ejemplo de cómo eliminar todos los eventos informativos.

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

Eliminar todos los eventos

Para eliminar todos los eventos, ejecute sysmail_delete_log_sp sin argumentos.

EXECUTE msdb.dbo.sysmail_delete_log_sp;

Eliminación de elementos de correo

El sysmail_delete_log_sp El procedimiento es únicamente para borrar entradas del registro. No elimina los elementos de correo de las tablas de correo electrónico de la base de datos.

Utilice sysmail_delete_mailitems_sp para eliminar elementos de correo electrónico de las tablas de correo electrónico de la base de datos.