共用方式為


sysmail_allitems (Transact-SQL)

適用於:SQL Server Azure SQL 受控執行個體

針對 Database Mail 處理的每個訊息,各包含一個數據列。 當您想要查看所有訊息的狀態時,請使用此檢視。

若要查看只有狀態為失敗的訊息,請使用 sysmail_faileditems。 若要查看只有未傳送的訊息,請使用 sysmail_unsentitems。 若要查看已傳送的訊息,請使用 sysmail_sentitems

資料行名稱 資料類型 描述
mailitem_id int 郵件佇列中郵件項目的識別碼。
profile_id int 用來傳送訊息之配置檔的標識碼。
recipients varchar(max) 郵件收件者的電子郵件位址。
copy_recipients varchar(max) 接收郵件復本之收件者的電子郵件位址。
blind_copy_recipients varchar(max) 接收郵件復本之收件者的電子郵件位址,但其名稱不會出現在郵件標頭中。
subject nvarchar(510) 郵件的主旨行。
body varchar(max) 訊息的本文。
body_format varchar(20) 訊息的本文格式。 可能值為 TEXTHTML
importance varchar(6) importance訊息的 參數。
sensitivity varchar(12) sensitivity訊息的 參數。
file_attachments varchar(max) 附加至電子郵件訊息之檔名的分號分隔清單。
attachment_encoding varchar(20) 郵件附件的類型。
query varchar(max) 郵件程式所執行的查詢。
execute_query_database sysname 郵件程式在其中執行查詢的資料庫內容。
attach_query_result_as_file bit 當值為 0時,查詢結果會包含在電子郵件訊息的本文中,在本文的內容之後。 當值為 1時,結果會以附件的形式傳回。
query_result_header bit 當值為 1時,查詢結果會包含數據行標頭。 當值為 0時,查詢結果不包含數據行標頭。
query_result_width int query_result_width訊息的 參數。
query_result_separator char(1) 用來分隔查詢輸出中數據行的字元。
exclude_query_output bit exclude_query_output訊息的 參數。 如需詳細資訊,請參閱 sp_send_dbmail
append_query_error bit append_query_error訊息的 參數。 0 表示 Database Mail 在查詢中發生錯誤時,不應該傳送電子郵件訊息。
send_request_date datetime 郵件放在郵件佇列上的日期和時間。
send_request_user sysname 提交郵件的使用者。 此值是資料庫郵件程式的用戶內容,而不是 From: 訊息的欄位。
sent_account_id int 用來傳送訊息之 Database Mail 帳戶的標識碼。
sent_status varchar(8) 郵件的狀態。 可能的值包括:

sent - 郵件已寄出。
unsent - 資料庫郵件仍在嘗試傳送訊息。
retrying - Database Mail 無法傳送訊息,但嘗試再次傳送。
failed - 資料庫郵件無法傳送郵件。
sent_date datetime 訊息傳送的日期和時間。
last_mod_date datetime 數據列上次修改的日期和時間。
last_mod_user sysname 上次修改數據列的使用者。

備註

使用檢視 sysmail_allitems 來查看 Database Mail 處理的所有訊息狀態。 此檢視可協助您識別任何問題的性質,方法是顯示所傳送訊息的屬性與未傳送之訊息的屬性。

此檢視公開的系統數據表包含所有訊息,並可能導致 msdb 資料庫成長。 定期刪除檢視中的舊訊息,以減少數據表的大小。 如需詳細資訊,請參閱 建立 SQL Server Agent 作業以封存 Database Mail 訊息和事件記錄檔。

權限

授與 系統管理員 固定伺服器角色和 DatabaseMailUserRole 資料庫角色。 由系統管理員固定伺服器角色的成員執行時,此檢視會顯示所有訊息。 所有其他使用者只會看到他們提交的訊息。