繁体   English   中英

从SQL Server 2012存储过程发送电子邮件

[英]Sending Emails From SQL Server 2012 Stored Procedures

我们要求能够通过SMTP从存储过程(SQL Server 2012)发送电子邮件。

我们需要保留对电子邮件“ FROM”地址和“显示名称”的控制,因此我认为这可以排除数据库邮件,因为这些邮件在已创建的配置文件中是硬设置的(非常好!大家都知道吗?)

我们还有哪些其他选择?

谢谢保罗

更新:用代码创建所需的临时数据库邮件配置文件,用它发送一次所需的电子邮件一次,然后删除该配置文件是否愚蠢?

从2008年起,您可以创建基本配置文件,然后使用@from_address/reply_to覆盖详细信息;

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'my profile',
    ...
    @subject = 'The Spice must flow',
    @from_address = '"Bob Smith" <xxx@yyy.com>',
    @reply_to = 'xxx@yyy.com'

这是一个选择。 创建一个SSIS包。

允许您的存储过程将电子邮件信息排队到数据库表中。 您的SSIS软件包将查询该表,并根据表中每一行的表值发送电子邮件,并在发送电子邮件后删除每条记录(或将其标记为已处理,以便保留已发送电子邮件的记录)。 然后安排一个SQL作业,该作业以最适合您需求的时间间隔运行您的程序包。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM