Sdílet prostřednictvím


sysmail_delete_log_sp (Transact-SQL)

platí pro:SQL Server

Odstraní události z protokolu databázové pošty. Odstraní všechny události v protokolu nebo události, které splňují kritéria data nebo typu.

Transact-SQL konvence syntaxe

Syntaxe

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

Argumenty

[ @logged_before = ] 'logged_before'

Odstraní položky do data a času určeného argumentem @logged_before . @logged_before je datetime s NULL výchozím nastavením. NULL označuje všechna data.

[ @event_type = ] 'event_type'

Odstraní položky protokolu typu zadaného jako @event_type. @event_type je varchar(15) bez výchozího nastavení. Platné položky jsou:

  • success
  • warning
  • error
  • informational

NULL označuje všechny typy událostí.

Hodnoty návratového kódu

0 (úspěch) nebo 1 (selhání).

Poznámky

Uložená procedura sysmail_delete_log_sp slouží k trvalému odstranění položek z protokolu databázové pošty. Volitelný argument umožňuje odstranit pouze starší záznamy zadáním data a času. Události starší než tento argument budou odstraněny. Volitelný argument umožňuje odstranit pouze události určitého typu zadané jako argument @event_type .

Odstranění položek v protokolu Databázové pošty neodstraní položky e-mailů z tabulek Databázová pošta. Pomocí sysmail_delete_mailitems_sp odstraňte e-maily z tabulek Databázová pošta.

Povolení

K tomuto postupu můžete udělit oprávnění EXECUTE, ale tato oprávnění se můžou při upgradu SQL Serveru přepsat.

Příklady

A. Odstranit všechny události

Následující příklad odstraní všechny události v protokolu databázové pošty.

EXECUTE msdb.dbo.sysmail_delete_log_sp;
GO

B. Odstranění nejstarších událostí

Následující příklad odstraní události v protokolu databázové pošty, které jsou starší než 9. října 2022.

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

C. Odstranění všech událostí určitého typu

Následující příklad odstraní zprávy o úspěchu v protokolu databázové pošty.

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