sysmail_allitems (Transact-SQL)
針對每個 Database Mail 處理的訊息,各包含一個資料列。 當您想要查看所有訊息的狀態時,請使用這份檢視。
若只要查看失敗狀態的訊息,請使用 sysmail_faileditems (Transact-SQL)。 若只要查看未傳送的訊息,請使用 sysmail_unsentitems (Transact-SQL)。 若只要查看已傳送的訊息,請使用 sysmail_sentitems (Transact-SQL)。
資料行名稱 |
資料類型 |
說明 |
---|---|---|
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) |
訊息的主體格式。 可能的值是 TEXT 和 HTML。 |
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 (Transact-SQL)>。 |
append_query_error |
bit |
訊息的 append_query_error 參數。 0 表示如果查詢中有錯誤,則 Database Mail 不應傳送電子郵件訊息。 |
send_request_date |
datetime |
訊息置於郵件佇列的日期和時間。 |
send_request_user |
sysname |
提交訊息的使用者。 這是 Database Mail 程序的使用者內容,不是訊息的「寄件者:」欄位。 |
sent_account_id |
int |
用來傳送訊息之 Database Mail 帳戶的識別碼。 |
sent_status |
varchar(8) |
郵件的狀態。 可能的值為:
|
sent_date |
datetime |
訊息傳送的日期和時間。 |
last_mod_date |
datetime |
資料列上次修改的日期和時間。 |
last_mod_user |
sysname |
上次修改資料列的使用者。 |
備註
使用 sysmail_allitems 檢視可查看 Database Mail 處理之所有訊息的狀態。 對 Database Mail 進行疑難排解時,這份檢視可藉顯示已傳送訊息和未傳送訊息的屬性比較,來幫助您識別問題的本質。
這份檢視所公開的系統資料表包含所有訊息,可能會使 msdb 資料庫成長。 請定期從檢視刪除舊訊息,以減少資料表大小。 如需詳細資訊,請參閱<建立 SQL Server Agent 作業以封存 Database Mail 訊息及事件記錄檔>。
權限
授與系統管理員 (sysadmin) 固定伺服器角色和 DatabaseMailUserRole 資料庫角色。 由系統管理員 (sysadmin) 固定伺服器角色的成員執行時,這份檢視會顯示所有訊息。 所有其他使用者只看得到他們所提交的訊息。