为什么在SQL Server中发送电子邮件时出现-2147467259错误?



我想发送一封包含SQL Server内部存储过程调用结果的电子邮件。

declare @querytext nvarchar(100)
set @querytext = 'sp_get_SPresults @item_name = ''Name of Group'''';
EXEC msdb.dbo.sp_send_dbmail  
@profile_name = 'My Email',  
@recipients = 'anaddress@adomain.com',  
@body = 'Email',  
@subject = 'Suitable Subject' ,     
@query = @querytext,
@attach_query_result_as_file = 1,
@query_result_header = 1,
@query_no_truncate = 1;

但是当我运行这个时,我得到一个

Msg 22050, 16层,状态1,23行初始化sqlcmd库失败,错误号为-2147467259。

当我在SQL Server中发送测试电子邮件时,它发送得很好。即使把@querytext设为"select * from [Table]"也不行。我在其他地方看到,包括@query_result_header=1可以清除这种问题,但在这里似乎没有什么不同。

如有任何帮助,不胜感激。

感谢

最后,无论出于何种原因,我尝试使用以下参数:

  • @profile_name
  • @recipients
  • @body
  • @subject
  • @body_format
  • @execute_query_database

现在可以工作了。谢谢大家的帮助。:)

相关内容

  • 没有找到相关文章

最新更新