Sql server 如何向多个收件人发送电子邮件?
我有一个存储过程,可以向少数收件人发送电子邮件。在这里,我想使用@copy\u recipients发送给两个不同的收件人。但是我有一个语法错误。如何做到这一点 存储过程代码Sql server 如何向多个收件人发送电子邮件?,sql-server,email,stored-procedures,Sql Server,Email,Stored Procedures,我有一个存储过程,可以向少数收件人发送电子邮件。在这里,我想使用@copy\u recipients发送给两个不同的收件人。但是我有一个语法错误。如何做到这一点 存储过程代码 EXEC msdb.dbo.sp_send_dbmail @profile_name = 'mail', @recipients = @Mail1, @copy_recipients = @Mail2;@Mail3, @body =@body , @subject =@subje
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'mail',
@recipients = @Mail1,
@copy_recipients = @Mail2;@Mail3,
@body =@body ,
@subject =@subject
您需要添加
使用字符串连接在电子邮件地址之间编码>(分号):
DECLARE @copy_to varchar(max)= @Mail2+';'+@Mail3
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'mail',
@recipients = @Mail1,
@copy_recipients = @copy_to,
@body =@body ,
@subject =@subject
您可以阅读MSDN文章
[@recipients=]“recipients”
是以分号分隔的电子邮件列表
要将消息发送到的地址。收件人列表的类型为
varchar(最大值)。尽管此参数是可选的,但至少有一个
@收件人、@copy\u收件人或@blind\u copy\u收件人必须是
指定,或sp_send_dbmail返回错误
[@copy\u recipients=]“copy\u recipients”
是以分号分隔的列表
要将邮件复制到的电子邮件地址的数目。副本收件人
列表的类型为varchar(max)。尽管此参数是可选的,但至少
@recipients、@copy\u recipients或@blind\u copy\u recipients中至少有一个
必须指定,否则sp_send_dbmail将返回错误
@Mail2@Mail3
-概念正确,实施不当。代码>,不在字符串中,将终止SQL语句,这将导致无效语法。我很高兴!;)