在msdb.dbo.sp_send_dbmail中,@ profile_name无效

时间:2015-07-16 20:34:05

标签: sql-server email sp-send-dbmail

我使用SQL Server作业来执行SendEmail存储过程。 @recipients是我们指定的电子邮件地址时,工作正常。

由于我无法登录指定的电子邮件地址来检查是否收到了电子邮件,因此我想将@recipients更改为我的电子邮件地址

问题是当我更改时,作业历史记录显示此作业未执行。错误是

  

Profile_name无效

有没有人对此有任何想法?

以下是示例。

EXEC msdb.dbo.sp_send_email 
@profile_name = 'ISSS Group',
@recipients = 'isss@xxx.edu',
@body = @mess,--@mess is a table
@body_format = 'HTML',
@subject = 'Student Information Update',
@from_address = 'administration@xxx.edu';

我想将@recipients = 'isss@xxx.edu'更改为@recipients = 'myemail@xxx.edu'以检查是否已收到该电子邮件。但是一旦我更改它,SQL Server作业就失败了。错误显示

  

个人资料名称无效。

1 个答案:

答案 0 :(得分:0)

您必须传递已注册个人资料的名称;你无法在飞行中制作它们。

但是,我假设你想要一个不同的显示名称,因此你似乎试图通过重命名配置文件来改变它。

您需要为新名称创建新的配置文件,或者只是在运行时传递它。其格式为:

@from_address = 'Displayed Name <emailaddress@example.com>'

所以,例如,

@from_address = 'ISSS Group <administration@xxx.edu>'

我使用这种方法,它可能会做你需要的一切。设置完全独立的配置文件是否有任何好处,我不知道;你将不得不进一步研究。