使用动态收件人列表从 SQL Server 发送电子邮件
从 SQL Server 发送电子邮件可以是简化通信的强大工具,但它可以当收件人地址存储在表中时,变得更加复杂。下面介绍了如何在 T-SQL 中应对这一挑战:
第 1 步:配置配置文件和帐户
使用数据库邮件向导配置数据库邮件配置文件和帐户。这将允许您指定 SMTP 设置和凭据。
步骤 2:启用扩展功能
按顺序执行以下命令以启用高级功能和数据库邮件 XP:
sp_CONFIGURE 'show advanced', 1 GO RECONFIGURE GO sp_CONFIGURE 'Database Mail XPs', 1 GO RECONFIGURE GO
第 3 步:循环表并发送电子邮件
要向表中列出的收件人发送电子邮件,请使用游标或 WHILE 循环遍历各行:
DECLARE @email_id NVARCHAR(450), @id BIGINT, @max_id BIGINT, @query NVARCHAR(1000) SELECT @id=MIN(id), @max_id=MAX(id) FROM [email_adresses] WHILE @id<=@max_id BEGIN SELECT @email_id=email_id FROM [email_adresses] set @query='sp_send_dbmail @profile_name=''yourprofilename'', @recipients='''+@email_id+''', @subject=''Test message'', @body=''This is the body of the test message. Congrates Database Mail Received By you Successfully.''' EXEC @query SELECT @id=MIN(id) FROM [email_adresses] where id>@id END
此代码将循环遍历 [email_adresses]表,检索电子邮件地址,并使用指定的配置文件和内容发送电子邮件。
以上是如何使用收件人列表从 SQL Server 发送动态电子邮件?的详细内容。更多信息请关注PHP中文网其他相关文章!