我得到了这个错误:
Msg 229,14级,状态5,过程sp_send_dbmail,第1行 对象'sp_send_dbmail‘、数据库'msdb’、架构'dbo‘上的EXECUTE权限被拒绝。
守则的有关部分:
/****** Object: StoredProcedure [dbo].[dbo.STATUSCHANGE_EMAILALERT] ******/
EXEC msdb.dbo.sp_send_dbmail
@recipients = 'Test@gmail.com', -- Group Email
@subject = 'Employee Status Update',
@profile_name ='Test@gmail.com', -- Setup the profile name group
@body = @body,
@body_format = 'HTML';发布于 2016-12-16 01:41:41
找到了对我有用的好的,简单的修复,这里
如果您的SQL应用程序无法使用数据库邮件发送电子邮件(我假设您已经设置了DBMail帐户和配置文件设置),那么有两件事需要设置:
发布于 2012-09-14 13:02:17
要发送数据库邮件,用户必须是msdb数据库中的用户和msdb数据库中DatabaseMailUserRole数据库角色的成员。若要向此角色添加msdb用户或组,请使用或为需要发送数据库邮件的用户或角色执行以下语句:
EXEC msdb.dbo.sp_addrolemember @rolename = 'DatabaseMailUserRole'
,@membername = '<user or role name>';
GO发布于 2012-09-14 13:00:27
授予执行存储过程的用户对sp_send_dbmail的执行权限,或将它们添加到角色msdb.DatabaseMailUser中。
https://stackoverflow.com/questions/12425096
复制相似问题