sysmail_faileditems (Transact-SQL)

具有 failed 状态的每个数据库邮件都在视图中占一行。 使用该视图可确定未成功发送的消息。

若要查看数据库邮件处理的所有消息,请使用 sysmail_allitems (Transact-SQL)。 若要仅查看未发送的消息,请使用 sysmail_unsentitems (Transact-SQL)。 若要仅查看已发送的消息,请使用 sysmail_sentitems (Transact-SQL)。 若要查看电子邮件附件,请使用 sysmail_mailattachments (Transact-SQL)

适用范围:SQL Server(SQL Server 2008 到当前版本)。

列名

数据类型

说明

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)

邮件附件的类型。

查询

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

发送消息所用数据库邮件帐户的标识符。 对于该视图,始终为 NULL。

sent_status

varchar(8)

邮件的状态。 对于该视图,始终为 failed

sent_date

datetime

从邮件队列中删除消息的日期和时间。

last_mod_date

datetime

上次修改行的日期和时间。

last_mod_user

sysname

上次修改行的用户。

注释

使用 sysmail_faileditems 视图可查看数据库邮件未发送的消息。 排除数据库邮件故障时,该视图可以向您显示未发送的消息的属性,从而帮助您确定问题的性质。 若要查看失败的原因,请参阅 sysmail_event_log (Transact-SQL) 视图中失败消息的项。

权限

授予 sysadmin 固定服务器角色和 databasemailuserrole 数据库角色。 当由 sysadmin 固定服务器角色的成员执行时,该视图显示所有失败的消息。 所有其他用户仅可查看他们已提交的失败的消息。