Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将存储过程结果发送到SQL Server中的电子邮件_Sql_Sql Server 2008_Tsql_Sql Server 2008 R2 - Fatal编程技术网

将存储过程结果发送到SQL Server中的电子邮件

将存储过程结果发送到SQL Server中的电子邮件,sql,sql-server-2008,tsql,sql-server-2008-r2,Sql,Sql Server 2008,Tsql,Sql Server 2008 R2,我正在尝试发送有关存储过程结果的电子邮件。我尝试过这样做: EXEC msdb.dbo.sp_send_dbmail @recipients = 'Testemail@XYZ.com', @query = 'EXEC test_email' , @subject = 'Sample Data', @attach_query_result_as_file = 1 ; 它给了我以下错误: Msg 15281,第16级,状态1,程序sp_send_dbmail,第

我正在尝试发送有关存储过程结果的电子邮件。我尝试过这样做:

EXEC msdb.dbo.sp_send_dbmail  
    @recipients = 'Testemail@XYZ.com',
    @query = 'EXEC test_email' ,
    @subject = 'Sample Data',
    @attach_query_result_as_file = 1 ;
它给了我以下错误:

Msg 15281,第16级,状态1,程序sp_send_dbmail,第0行
SQL Server阻止访问组件“Database Mail XPs”的过程“dbo.sp_send_dbmail”,因为此组件作为此服务器安全配置的一部分已关闭。系统管理员可以通过使用sp_configure启用“数据库邮件XPs”。有关启用“数据库邮件XPs”的详细信息,请参阅SQL Server联机丛书中的“表面积配置”


还有其他方法吗?

恐怕没有其他方法使用DBMail。数据库邮件需要通过以下方式启用: EXEC sp_配置“数据库邮件XPs”,1 但另外,数据库邮件需要配置适当的配置文件和帐户

对于策略不启用邮件的服务器,我使用的一种解决方法是让存储过程调用运行查询并发送电子邮件的SSIS包。这将完全绕过数据库邮件,SSIS包将自己连接到SMTP服务器

我通常的设置方法是运行sp_startjob来调用服务器代理作业,然后运行SSIS包

希望这有帮助


皮特

恐怕没有其他使用DBMail的方法了。数据库邮件需要通过以下方式启用: EXEC sp_配置“数据库邮件XPs”,1 但另外,数据库邮件需要配置适当的配置文件和帐户

对于策略不启用邮件的服务器,我使用的一种解决方法是让存储过程调用运行查询并发送电子邮件的SSIS包。这将完全绕过数据库邮件,SSIS包将自己连接到SMTP服务器

我通常的设置方法是运行sp_startjob来调用服务器代理作业,然后运行SSIS包

希望这有帮助


皮特

我认为这个错误信息实际上在这里非常有用。您是否尝试过与DBA联系,以启用所需的SQL Server组件来发送电子邮件?我认为错误消息实际上在这里非常有用。您是否尝试过与DBA联系以启用所需的SQL Server组件来发送电子邮件?