Поделиться через


sysmail_delete_log_sp (Transact-SQL)

Удаляет события из журнала компонента Database Mail. Удаляются либо все события, либо только события, удовлетворяющие критериям даты или типа.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

sysmail_delete_log_sp  [ [ @logged_before = ] 'logged_before' ]
    [, [ @event_type = ] 'event_type' ]

Аргументы

  • [ @logged_before = ] 'logged_before'
    Удаляет записи вплоть до даты и времени, указанных в аргументе logged_before. Аргумент logged_before имеет тип datetime и значение по умолчанию NULL. Значение NULL соответствует всем датам.

  • [ @event_type = ] 'event_type'
    Удаляет журнальные записи определенного типа, заданного аргументом event_type. Аргумент event_type имеет тип varchar(15) и не имеет значения по умолчанию. Допустимые записи: success, warning, error и informational. NULL соответствует всем типам событий.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

Записи из журнала компонента Database Mail удаляются навсегда с помощью хранимой процедуры sysmail_delete_log_sp. Необязательный аргумент позволяет удалять записи определенной давности. Из этого следует, что удаляются события, созданные ранее даты, заданной в аргументе. Необязательный аргумент позволяет удалять только события определенного типа, заданного с помощью аргумента event_type.

При удалении записей из журнала компонента Database Mail записи электронной почты не удаляются из таблиц Database Mail. Для удаления электронной почты из таблиц компонента Database Mail используется хранимая процедура sysmail_delete_mailitems_sp.

Разрешения

Эта процедура доступна только для членов предопределенной роли сервера sysadmin.

Примеры

А. Удаление всех событий

В следующем примере из журнала компонента Database Mail удаляются все события.

EXECUTE msdb.dbo.sysmail_delete_log_sp ;
GO

Б. Удаление событий определенной давности

В следующем примере из журнала компонента Database Mail удаляются события, созданные до 9 октября 2005 года.

EXECUTE msdb.dbo.sysmail_delete_log_sp
    @logged_before = 'October 9, 2005' ;
GO

В. Удаление всех событий определенного типа

В следующем примере из журнала компонента Database Mail удаляются все сообщения «success».

EXECUTE msdb.dbo.sysmail_delete_log_sp
    @event_type = 'success' ;
GO