Pokud používáte Database Mail na serveru SQL Server, můžete použít sysmail_allitems
zobrazení pro kontrolu stavu všech e-mailů, které Database Mail zpracoval.
Příklad
Zde je příklad kontroly stavu všech e-mailových zpráv. Všimněte si, že to je třeba provést na msdb
databáze.
SELECT * FROM msdb.dbo.sysmail_allitems;
Výsledek (při použití vertikálního výstupu):
mailitem_id | 1 profile_id | 1 recipients | [email protected] copy_recipients | NULL blind_copy_recipients | NULL subject | SQL Server Agent Job: FAILED body | Your favorite SQL Server Agent job just failed body_format | TEXT importance | NORMAL sensitivity | NORMAL file_attachments | NULL attachment_encoding | MIME query | NULL execute_query_database | NULL attach_query_result_as_file | 0 query_result_header | 1 query_result_width | 256 query_result_separator | exclude_query_output | 0 append_query_error | 0 send_request_date | 2020-08-24 02:40:48.093 send_request_user | sa sent_account_id | NULL sent_status | failed sent_date | 2020-08-24 02:41:53.000 last_mod_date | 2020-08-24 02:41:53.290 last_mod_user | sa
Použil jsem zde vertikální výstup, abyste se nemuseli posouvat do stran, abyste viděli všechny sloupce.
Zobrazuji také pouze první řádek (i když byly vráceny čtyři řádky), aby byly věci stručné.
Tady je to znovu, kromě toho, že tentokrát zobrazím všechny čtyři řádky. Tentokrát přepnu na normální horizontální výstup a uvedu jen několik sloupců.
SELECT
mailitem_id,
sent_status,
send_request_date
FROM msdb.dbo.sysmail_allitems;
Výsledek (při použití vertikálního výstupu):
+---------------+---------------+-------------------------+ | mailitem_id | sent_status | send_request_date | |---------------+---------------+-------------------------| | 1 | failed | 2020-08-24 02:40:48.093 | | 2 | failed | 2020-08-24 02:47:40.833 | | 3 | sent | 2020-08-24 03:58:57.887 | | 4 | sent | 2020-08-24 04:11:19.300 | +---------------+---------------+-------------------------+