Aracılığıyla paylaş


sysmail_delete_log_sp (Transact-SQL)

Şunlar için geçerlidir: SQL Server

Veritabanı Posta günlüğünden olayları siler. Günlükteki tüm olayları veya tarih veya tür ölçütlerini karşılayan olayları siler.

Transact-SQL söz dizimi kuralları

Sözdizimi

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

Tartışmalar

[ @logged_before = ] 'logged_before'

@logged_before bağımsız değişkeni tarafından belirtilen tarih ve saate kadar olan girişleri siler. @logged_before , varsayılan olarak tarih saat değeridir NULL . NULL tüm tarihleri gösterir.

[ @event_type = ] 'event_type'

@event_type olarak belirtilen türdeki günlük girdilerini siler. @event_type , varsayılan olmayan varchar(15) değeridir. Geçerli girdiler şunlardır:

  • success
  • warning
  • error
  • informational

NULL tüm olay türlerini gösterir.

Dönüş kodu değerleri

0 (başarı) veya 1 (başarısızlık).

Açıklamalar

sysmail_delete_log_sp Girdileri Veritabanı Posta günlüğünden kalıcı olarak silmek için saklı yordamı kullanın. İsteğe bağlı bağımsız değişken, tarih ve saat sağlayarak yalnızca eski kayıtları silmenizi sağlar. Bu bağımsız değişkenden eski olaylar silinir. İsteğe bağlı bağımsız değişken, yalnızca @event_type bağımsız değişkeni olarak belirtilen belirli bir türdeki olayları silmenizi sağlar.

Veritabanı Posta günlüğündeki girdilerin silinmesi, Veritabanı Postası tablolarından e-posta girdilerini silmez. Veritabanı Postası tablolarından e-posta silmek için sysmail_delete_mailitems_sp kullanın.

İzinler

Bu yordamda EXECUTE izinler vekleyebilirsiniz, ancak bu izinler SQL Server yükseltmesi sırasında geçersiz kılınabilir.

Örnekler

A. Tüm olayları sil

Aşağıdaki örnek, Veritabanı Posta günlüğündeki tüm olayları siler.

EXECUTE msdb.dbo.sysmail_delete_log_sp;
GO

B. En eski olayları silme

Aşağıdaki örnek, Veritabanı Posta günlüğünde 9 Ekim 2022'den eski olayları siler.

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

C. Belirli bir türdeki tüm olayları silme

Aşağıdaki örnek, Veritabanı Posta günlüğündeki başarı iletilerini siler.

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