sysmail_add_profileaccount_sp (Transact-SQL)
Ajoute un compte de messagerie de base de données à un profil de messagerie de base de données. Exécute sysmail_add_profileaccount_sp une fois le compte de base de données créé avec sysmail_add_account_sp (Transact-SQL), et le profil de base de données créé avec sysmail_add_profile_sp (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
Identificateur du profil auquel le compte est ajouté. profile_id est de type int, et la valeur par défaut est NULL. L'argument profile_id ou profile_name doit être spécifié.[ @profile_name = ] 'profile_name'
Nom du profil auquel le compte est ajouté. profile_name est de type sysname, et la valeur par défaut est NULL. L'argument profile_id ou profile_name doit être spécifié.[ @account_id = ] account_id
Identificateur du compte à ajouter au profil. account_id est de type int, et la valeur par défaut est NULL. L'argument account_id ou account_name doit être spécifié.[ @account_name = ] 'account_name'
Nom du compte à ajouter au profil. account_name est de type sysname, et la valeur par défaut est NULL. L'argument account_id ou account_name doit être spécifié.[ @sequence_number = ] sequence_number
Numéro de séquence du compte dans le profil. sequence_number est de type 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 renvoyés
0 (succès) 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 qui est 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 dans lequel la messagerie de base de données utilise les comptes 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. En cas d'échec de ce compte, la messagerie de base de données utilise le compte dont le numéro de séquence est le plus plus proche mais supérieur, et ainsi de suite jusqu'à ce que le message soit envoyé 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 message pendant la durée configurée dans le paramètre AccountRetryDelay de la procédure stockée sysmail_configure_sp, puis tente à nouveau d'envoyer le message en commençant par le numéro de séquence le plus petit. Utilisez le paramètre AccountRetryAttempts de la procédure stockée sysmail_configure_sp pour configurer le nombre de tentatives d'envoi du message électronique par le processus de messagerie externe à l'aide de chaque compte du profil spécifié.
Si plusieurs comptes ont le même numéro de séquence, la messagerie de base de données utilisera uniquement l'un de ces comptes 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 stockée sysmail_add_profileaccount_sp se trouve dans la base de données msdb et est détenue par le schéma dbo. Cette procédure doit être exécutée avec un nom en trois parties si la base de données active n'est pas msdb.
Autorisations
Les autorisations d'exécution pour cette procédure reviennent par défaut aux membres du rôle de serveur fixe sysadmin.
Exemple
L'exemple suivant associe le profil AdventureWorks Administrator au compte Audit Account. Le numéro de séquence de ce compte est 1.
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Administrator',
@account_name = 'Audit Account',
@sequence_number = 1 ;