Share via


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),沒有預設值。有效的項目是 successwarningerrorinformational。NULL 表示所有事件類型。

傳回碼值

0 (成功) 或 1 (失敗)

備註

使用 sysmail_delete_log_sp 預存程序可從 Database Mail 記錄中永久刪除項目。一個選擇性引數可藉由提供日期和時間,讓您只刪除較舊的記錄。比該引數舊的事件會被刪除。一個選擇性引數可讓您只刪除 event_type 引數所指定的特定類型事件。

刪除 Database Mail 記錄中的項目不會從 Database Mail 資料表中刪除電子郵件項目。使用 sysmail_delete_mailitems_sp 可從 Database Mail 資料表中刪除電子郵件。

權限

只有系統管理員 (sysadmin) 固定伺服器角色的成員能夠存取這個程序。

範例

A. 刪除所有事件

下列範例會刪除 Database Mail 記錄中的所有事件。

EXECUTE msdb.dbo.sysmail_delete_log_sp ;
GO

B. 刪除最舊的事件

下列範例會刪除 Database Mail 記錄中 2005 年 10 月 9 日以前的事件。

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

C. 刪除特定類型的所有事件

下列範例會刪除 Database Mail 記錄中的成功訊息。

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