sysmail_add_profileaccount_sp (Transact-SQL)

S’applique à :SQL Server

Ajoute un compte de messagerie de base de données à un profil de messagerie de base de données. Exécutez sysmail_add_profileaccount_sp une fois qu’un compte de base de données est créé avec sysmail_add_account_sp (Transact-SQL) et qu’un profil de base de données est créé avec sysmail_add_profile_sp (Transact-SQL).

Conventions de la syntaxe Transact-SQL

Syntaxe

sysmail_add_profileaccount_sp { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' } ,
    { [ @account_id = ] account_id | [ @account_name = ] 'account_name' }
    [ , [ @sequence_number = ] sequence_number ]
[ ; ]

Arguments

[ @profile_id = ] profile_id

ID de profil auquel ajouter le compte. @profile_id est int, avec la valeur par défaut NULL. Les @profile_id ou les @profile_name doivent être spécifiés.

[ @profile_name = ] 'profile_name'

Nom du profil auquel le compte est ajouté. @profile_name est sysname, avec la valeur par défaut NULL. Les @profile_id ou les @profile_name doivent être spécifiés.

[ @account_id = ] account_id

ID de compte à ajouter au profil. @account_id est int, avec la valeur par défaut NULL. La @account_id ou la @account_name doit être spécifiée.

[ @account_name = ] 'account_name'

Nom du compte à ajouter au profil. @account_name est sysname, avec la valeur par défaut NULL. La @account_id ou la @account_name doit être spécifiée.

[ @sequence_number = ] sequence_number

Numéro de séquence du compte dans le profil. @sequence_number est int, sans valeur par défaut. Le numéro de séquence détermine l'ordre dans lequel les comptes sont utilisés dans le profil.

Valeurs des codes de retour

0 (réussite) ou 1 (échec).

Notes

Le profil et le compte doivent déjà exister. Sinon, la procédure stockée retourne une erreur.

Notez que cette procédure stockée ne modifie pas le numéro de séquence d’un compte déjà associé au profil spécifié. Pour plus d’informations sur la mise à jour du numéro de séquence d’un compte, consultez sysmail_update_profileaccount_sp (Transact-SQL) .

Le numéro de séquence détermine l'ordre d'utilisation des comptes de messagerie de base de données dans le profil. Pour un nouveau message électronique, la messagerie de base de données démarre avec le compte dont le numéro de séquence est le plus petit. Si ce compte échoue, Database Mail utilise le compte avec le numéro de séquence le plus élevé suivant, et ainsi de suite, jusqu’à ce que la messagerie de base de données envoie le message correctement, ou que le compte avec le numéro de séquence le plus élevé échoue. Si le compte avec le numéro de séquence le plus élevé échoue, la messagerie de base de données interrompt les tentatives d’envoi du courrier pour la durée configurée dans le AccountRetryDelay paramètre , sysmail_configure_sppuis démarre le processus de tentative d’envoi du courrier à nouveau, en commençant par le numéro de séquence le plus bas. Utilisez le AccountRetryAttempts paramètre , pour configurer le nombre de fois où le processus de messagerie externe tente d’envoyer le message électronique à l’aide de sysmail_configure_spchaque compte dans le profil spécifié.

Si plusieurs comptes possèdent le même numéro de séquence, la messagerie de base de données utilise uniquement l'un d'eux pour un message électronique donné. Dans ce cas, la messagerie de base de données exclut toute garantie en ce qui concerne le compte utilisé pour ce numéro de séquence ou l'utilisation du même compte d'un message à un autre.

La procédure sysmail_add_profileaccount_sp stockée se trouve dans la msdb base de données et appartient au schéma dbo . La procédure doit être exécutée avec un nom en trois parties si la base de données actuelle n’est pas msdb.

Autorisations

Cette procédure stockée appartient au rôle db_owner . Vous pouvez accorder EXECUTE des autorisations pour n’importe quel utilisateur, mais ces autorisations peuvent être remplacées lors d’une mise à niveau de SQL Server.

Exemples

L'exemple suivant associe le profil AdventureWorks Administrator au compte Audit Account. Le compte d’audit a un nombre séquentiel de 1.

EXEC msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks Administrator',
    @account_name = 'Audit Account',
    @sequence_number = 1;