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

請參閱

參考

sysmail_event_log (Transact-SQL)

sysmail_delete_mailitems_sp (Transact-SQL)

概念

建立 SQL Server Agent 作業以封存 Database Mail 訊息及事件記錄檔