首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sp_send_dbmail成功,但有时失败

sp_send_dbmail成功,但有时失败
EN

Server Fault用户
提问于 2021-09-07 05:32:03
回答 1查看 435关注 0票数 0

也张贴在堆栈溢出。任何反馈都会非常感谢。

我需要一个SQL作业来发送多封电子邮件,我遇到了这个错误,我无法找到任何解决方案。当我用这种方式发送电子邮件时,我每次测试都会成功。

代码语言:javascript
复制
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'AzureManagedInstance_dbmail_profile',
@recipients = '*Valid Email Address*',
@body = 'test',
@subject = 'Testing';

当我偶尔向电子邮件中添加一个查询时,任务就会失败。

我已经提取了一个片段并简化了复制该问题的SELECT查询。

代码语言:javascript
复制
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'AzureManagedInstance_dbmail_profile',
@recipients = '*Valid Email Address*',
@body = 'test',
@query = 
'
SELECT GETDATE()
',
@subject = 'Testing';

当我运行这个程序时,它成功地向我发送了一封带有日期的电子邮件,如果我再次运行代码,我会得到通用错误,但并不总是这样。

未能用错误号-2147467259初始化sqlcmd库。

我使用进行了一些挖掘,发现了以下错误消息

连接已被删除,因为打开它的主体随后假定了一个新的安全上下文,然后尝试在其模拟的安全上下文下重置连接。不支持此方案。请参阅联机丛书中的“模拟概述”。

我目前正在使用SA帐户,但一开始使用最低的可行特权。

我试着在通用的电子邮件配置文件下运行这个工作,结果是一样的。

运行此代码的任务将成功并失败,没有明显的原因,我可以找到。作业运行成功与否,似乎也没有一个模式。

有人遇到这个问题并设法解决了吗?或者有人能给我指明解决这个问题的方向?

EN

回答 1

Server Fault用户

发布于 2021-10-04 09:14:51

尝试将@query_result_header设置为0,将@query_no_truncate设置为1

代码语言:javascript
复制
@query_result_header = 1
@query_no_truncate = 0

query_result_header指定查询结果是否包括列标题。

´query_result_header´值为“位”类型。当值为1时,查询结果包含列标题。当值为0时,查询结果不包括列标题。此参数默认为1(仅在指定@query时才适用)。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1076826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档