Maison >base de données >tutoriel mysql >Comment puis-je envoyer des e-mails dynamiques à partir de SQL Server à l'aide d'une table de liste de destinataires ?
Envoi d'e-mails depuis SQL Server avec liste de destinataires dynamique
L'envoi d'e-mails depuis SQL Server peut être un outil puissant pour rationaliser la communication, mais il peut deviennent plus complexes lorsque les adresses des destinataires sont stockées dans une table. Voici comment relever ce défi dans T-SQL :
Étape 1 : configurer le profil et le compte
Configurez un profil et un compte de messagerie de base de données à l'aide de l'assistant de messagerie de base de données. Cela vous permettra de spécifier les paramètres et les informations d'identification SMTP.
Étape 2 : Activer les fonctionnalités étendues
Exécutez les commandes suivantes dans l'ordre pour activer les fonctionnalités avancées et les XP de messagerie de base de données :
sp_CONFIGURE 'show advanced', 1 GO RECONFIGURE GO sp_CONFIGURE 'Database Mail XPs', 1 GO RECONFIGURE GO
Étape 3 : parcourir la table et envoyer E-mails
Pour envoyer des e-mails aux destinataires répertoriés dans un tableau, utilisez un curseur ou une boucle WHILE pour parcourir les lignes :
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
Ce code parcourra les [email_adresses] table, récupérez l'adresse e-mail et envoyez un e-mail en utilisant le profil et le contenu spécifiés.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!