sysmail_allitems (Transact-SQL)
データベース メールで処理されたメッセージごとに 1 行のデータを格納します。このビューは、すべてのメッセージの状態を確認するときに使用できます。
状態が失敗となっているメッセージだけを確認するには、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) |
CC としてメッセージのコピーを受け取る受信者の電子メール アドレス。 |
blind_copy_recipients |
varchar(max) |
BCC としてメッセージのコピーを受け取る受信者の電子メール アドレス。この受信者の名前は、メッセージ ヘッダーには表示されません。 |
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 は、クエリにエラーがあった場合、データベース メールで電子メール メッセージが送信されないことを示します。 |
send_request_date |
datetime |
メッセージがメール キューに挿入された日時。 |
send_request_user |
sysname |
メッセージを送信したユーザー。これはメッセージの [差出人:] フィールドに表示されるユーザーではなく、データベース メール プロシージャのユーザー コンテキストです。 |
sent_account_id |
int |
メッセージの送信に使用されたデータベース メール アカウントの識別子。 |
sent_status |
varchar(8) |
メールの状態。次の値をとります。
|
sent_date |
datetime |
メッセージが送信された日時。 |
last_mod_date |
datetime |
行が最後に変更された日時。 |
last_mod_user |
sysname |
行を最後に変更したユーザー。 |
解説
sysmail_allitems ビューは、データベース メールで処理されたすべてのメッセージの状態を確認するときに使用できます。データベース メールのトラブルシューティングを行うとき、このビューでは送信済みとそれ以外のメッセージの属性を比較できるので、問題の性質を特定するのに役立ちます。
このビューで表示されるシステム テーブルには、すべてのメッセージが格納されているため、msdb データベースが増大する可能性があります。古いメッセージをビューから定期的に削除して、テーブルのサイズを縮小するようにしてください。詳細については、「データベース メール メッセージやイベント ログをアーカイブする SQL Server エージェント ジョブを作成する方法」を参照してください。
権限
sysadmin 固定サーバー ロールおよび DatabaseMailUserRole データベース ロールが与えられている必要があります。sysadmin 固定サーバー ロールのメンバとして実行した場合、このビューにはすべてのメッセージが表示されます。その他のユーザーの場合は、自分が送信したメッセージだけを確認できます。