Sql server 通过SQL Server 2008 R2 Reporting Services发送电子邮件报告

Sql server 通过SQL Server 2008 R2 Reporting Services发送电子邮件报告,sql-server,reporting-services,ssrs-2008,Sql Server,Reporting Services,Ssrs 2008,我们在SQLServer2008R2上运行SQLServerReportingServices,并创建了一些订阅,以向特定人员发送电子邮件。我的问题是:我可以查询数据库并使用数据库中的电子邮件地址根据数据库中的该电子邮件地址自动发送报告吗?如果您尝试自动发送数据,则可以使用Sql Server Agent 及 您可以使用此代码,并根据您的要求进行修改 declare @id int declare @name varchar(25) declare @age int declare @exp d

我们在SQLServer2008R2上运行SQLServerReportingServices,并创建了一些订阅,以向特定人员发送电子邮件。我的问题是:我可以查询数据库并使用数据库中的电子邮件地址根据数据库中的该电子邮件地址自动发送报告吗?

如果您尝试自动发送数据,则可以使用Sql Server Agent

及 您可以使用此代码,并根据您的要求进行修改

declare @id int
declare @name varchar(25)
declare @age int
declare @exp datetime
declare @msgbody varchar(100)

declare @add varchar(max)
declare cursername cursor

for 

select id,name,age, convert(varchar(10),exprire,103)as exprire from Tablename 

open cursername
fetch next from cursername into  @id ,@name,@age,@exp



while @@FETCH_STATUS = 0

begin
fetch next from cursername
into @id ,@name,@age,@exp

set @msgbody = ''+ CAST(@id as varchar(20))+ '    '+ @name +'    '+  CAST(@age as varchar(20))  +'    '+ CONVERT(varchar(20),@exp,103) +''
set @add = @add + @msgbody



print ''+ CAST(@id as varchar(20)) + @name +  CAST(@age as varchar(20))  + CONVERT(varchar(20),@exp,103) +''
end 


use msdb
EXEC sp_send_dbmail
@profile_name='dv', 
@recipients='Emailreciever@yahoo.com', 
@subject='Send data specific',
@body=   @add

close cursername
deallocate cursername

我希望它对您的

有用,因此我看到了数据驱动订阅。我想这就是答案吧?这是否仅在企业版中可用?