Delen via


sysmail_delete_log_sp (Transact-SQL)

Van toepassing op:SQL Server

Hiermee verwijdert u gebeurtenissen uit het database-e-maillogboek. Hiermee verwijdert u alle gebeurtenissen in het logboek of die gebeurtenissen die voldoen aan een datum of typecriteria.

Transact-SQL syntaxis-conventies

Syntaxis

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

Argumenten

[ @logged_before = ] 'logged_before'

Hiermee verwijdert u items tot de datum en tijd die zijn opgegeven door het argument @logged_before . @logged_before is datum/tijd met NULL als standaardinstelling. NULL geeft alle datums aan.

[ @event_type = ] 'event_type'

Hiermee verwijdert u logboekvermeldingen van het type dat is opgegeven als de @event_type. @event_type is varchar(15) zonder standaardinstelling. Geldige vermeldingen zijn:

  • success
  • warning
  • error
  • informational

NULL geeft alle gebeurtenistypen aan.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Opmerkingen

Gebruik de sysmail_delete_log_sp opgeslagen procedure om items definitief te verwijderen uit het database-e-maillogboek. Met een optioneel argument kunt u alleen de oudere records verwijderen door een datum en tijd op te geven. Gebeurtenissen die ouder zijn dan dat argument, worden verwijderd. Met een optioneel argument kunt u alleen gebeurtenissen van een bepaald type verwijderen, opgegeven als het argument @event_type .

Als u vermeldingen in het Database Mail-logboek verwijdert, worden de e-mailberichten niet uit de Database Mail-tabellen verwijderd. Gebruik sysmail_delete_mailitems_sp om e-mail uit de tabellen Database Mail te verwijderen.

Machtigingen

U kunt EXECUTE machtigingen verlenen voor deze procedure, maar deze machtigingen worden mogelijk overschreven tijdens een SQL Server-upgrade.

Voorbeelden

Eén. Alle gebeurtenissen verwijderen

In het volgende voorbeeld worden alle gebeurtenissen in het database-e-maillogboek verwijderd.

EXECUTE msdb.dbo.sysmail_delete_log_sp;
GO

B. De oudste gebeurtenissen verwijderen

In het volgende voorbeeld worden gebeurtenissen in het Database Mail-logboek verwijderd die ouder zijn dan 9 oktober 2022.

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

C. Alle gebeurtenissen van een bepaald type verwijderen

In het volgende voorbeeld worden geslaagde berichten in het database-e-maillogboek verwijderd.

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