Database 是否有一个“输出”列表;sp_send_dbmail";?
我想知道Database 是否有一个“输出”列表;sp_send_dbmail";?,database,Database,我想知道sp_send_dbmail的输出列表,例如,当我运行sp_send_dbmail时,输出是0它是成功的,而且如果输出是20,它没有找到收件人 因此,我想知道是否有sp_send_dbmail的输出列表,根据sp_send_dbmail()。这意味着,已经在数据库邮件队列中设置了邮件,对于每封邮件,结果集中都会返回邮件的mailitem\u id 任何非0的返回值都表示错误。失败语句的准确错误代码可以在@@error中看到 使用sp\u send\u dbmail()后,邮件将以异步方式
sp_send_dbmail
的输出列表,例如,当我运行sp_send_dbmail
时,输出是0
它是成功的,而且如果输出是20
,它没有找到收件人
因此,我想知道是否有sp_send_dbmail
的输出列表,根据sp_send_dbmail()。这意味着,已经在数据库邮件队列中设置了邮件,对于每封邮件,结果集中都会返回邮件的mailitem\u id
任何非0的返回值都表示错误。失败语句的准确错误代码可以在@@error
中看到
使用sp\u send\u dbmail()
后,邮件将以异步方式发送,但由于多种原因仍可能失败。因此,如果sp\u send\u dbmail()
返回0,并不意味着最终成功
您可以查看msdb.dbo.sysmail\u faileditems
以防出错,邮件会在那里()。好的,有没有办法知道最终结果是否成功?确切地说,根据我的经验,没有。您可以尽一切努力创建正确的邮件。然后你可以尽一切努力让他们排队。然后,您可以执行服务器可以正常处理队列的所有操作。但最后,您无法确定垃圾邮件过滤器中是否捕获了邮件。这是发送邮件。但为了尽最大努力,我会检查sp_send_dbmail()
(0或否)的结果,然后检查结果集是否每个邮件都有一个条目,然后检查sysmail_faileditems
,如果该条目为空。因此,你可以说:“邮件已经正确发送,但是如果它们已经到达,我就不知道了。”好的,真的谢谢你,hepl,这对我帮助很大。再次感谢