SQL SERVER 通过作业来邮件发送SQL结果报错。 (错误 22050)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL SERVER 通过作业来邮件发送SQL结果报错。 (错误 22050)相关的知识,希望对你有一定的参考价值。
环境:SQL SERVER2008R2
症状描述:
作业中执行如下脚本报错:已以用户 NT AUTHORITY\NETWORK SERVICE 的身份执行。 Error formatting query, probably invalid parameters [SQLSTATE 42000] (错误 22050). 该步骤失败。
但在ssms客户端中直接执行是可以正常发送。。。
Exec
dbo.sp_send_dbmail
@profile_name=‘邮件服务器‘,
@recipients=‘收件人‘,
@subject=‘邮件标题‘,
@body=‘正文‘,
@query =‘select * from table‘
很奇怪,做了很多测验想找出哪个环节的问题,过程不多赘述,直接说我的解决方法。
最后怀疑数据库版本的问题。现有版本是:
Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)
Apr 2 2010 15:48:46
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)
找了台测试机打上SP1补丁做测试:
Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (X64)
Jun 17 2011 00:54:03
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1) (Hypervisor)
在作业中终于可以正常发送邮件。
当然可能会有更好的解决办法,不需要打补丁。知道的请不吝赐教。
以上是关于SQL SERVER 通过作业来邮件发送SQL结果报错。 (错误 22050)的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 SQL Server 通过电子邮件发送包含查询结果的 Excel 工作簿