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 ?

Comment puis-je envoyer des e-mails dynamiques à partir de SQL Server à l'aide d'une table de liste de destinataires ?

Linda Hamilton
Libérer: 2025-01-04 22:26:42
original
348 Les gens l'ont consulté

How Can I Send Dynamic Emails from SQL Server Using a Recipient List Table?

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
Copier après la connexion

É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
Copier après la connexion

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal