pat*_*ega 6 sql-server sp-send-dbmail
我正在从SQL Server发送电子邮件,并需要sent_status将msdb.dbo.sysmail_mailitems表中列的值映射到更具描述性的内容.
到目前为止,我已经确定了两个值:
是否有更多可能的值,如果有,它们代表什么?
sun*_*sen 17
sent_status, --0 new, not sent, 1 sent, 2 failure or 3 retry.
Run Code Online (Sandbox Code Playgroud)
在相关表的MSDN页面msdb.dbo.sysmail_allitems上,说明sent_status如下:
邮件的状态.可能的值是:
已发送 - 邮件已发送.
未发送 - 数据库邮件仍在尝试发送邮件.
重试 - 数据库邮件无法发送邮件但尝试再次发送邮件.
失败 - 数据库邮件无法发送消息.
将两个视图连接在一起如下:
SELECT DISTINCT mi.sent_status, ai.sent_status
FROM
msdb.dbo.sysmail_allitems ai
FULL OUTER JOIN
msdb.dbo.sysmail_mailitems mi ON
ai.mailitem_id = mi.mailitem_id
Run Code Online (Sandbox Code Playgroud)
会产生一种关系,可以用以下CASE语句表达:
SELECT
CASE sent_status
WHEN 0 THEN 'Unsent'
WHEN 1 THEN 'Sent'
WHEN 2 THEN 'Failed'
WHEN 3 THEN 'Retrying'
END AS sent_status_desc
FROM msdb..sysmail_mailitems
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20572 次 |
| 最近记录: |