sysmail_add_account_sp (Transact-SQL)

Crée un nouveau compte de messagerie de base de données contenant des informations sur un compte SMTP.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

sysmail_add_account_sp  [ @account_name = ] 'account_name',
    [ @email_address = ] 'email_address' ,
    [ [ @display_name = ] 'display_name' , ]
    [ [ @replyto_address = ] 'replyto_address' , ]
    [ [ @description = ] 'description' , ]
    [ @mailserver_name = ] 'server_name' 
    [ , [ @mailserver_type = ] 'server_type' ]
    [ , [ @port = ] port_number ]
    [ , [ @username = ] 'username' ]
    [ , [ @password = ] 'password' ]
    [ , [ @use_default_credentials = ] use_default_credentials ]
    [ , [ @enable_ssl = ] enable_ssl ]
    [ , [ @account_id = ] account_id OUTPUT ]

Arguments

  • [ @account_name = ] 'account_name'
    Nom du compte à ajouter. account_name est de type sysname, sans valeur par défaut.

  • [ @email_address = ] 'email_address'
    Adresse de messagerie électronique à partir de laquelle envoyer le message. Cette adresse doit être une adresse électronique Internet. email_address est de type nvarchar(128) et ne possède pas de valeur par défaut. Par exemple, un compte du service SQL Server Agent peut envoyer des messages électroniques à partir de l'adresse SqlAgent@Adventure-Works.com.

  • [ @display_name = ] 'display_name'
    Nom complet à utiliser sur des messages électroniques à partir de ce compte. display_name est de type nvarchar(128), avec la valeur par défaut NULL. Par exemple, un compte du service SQL Server Agent peut afficher le nom SQL Server Agent Automated Mailer sur les messages électroniques.

  • [ @replyto_address = ] 'replyto_address'
    Adresse à partir de laquelle les réponses aux messages de ce compte sont envoyées. replyto_address est de type nvarchar(128), avec NULL comme valeur par défaut. Par exemple, les réponses envoyées vers un compte du service SQL Server Agent peuvent être envoyées à l'administrateur de base de données, dont l'adresse est danw@Adventure-Works.com.

  • [ @description = ] 'description'
    Description du compte. description est de type nvarchar(256), avec une valeur par défaut NULL.

  • [ @mailserver_name = ] 'server_name'
    Nom ou adresse IP du serveur de messagerie SMTP à utiliser pour ce compte. L'ordinateur qui exécute SQL Server doit pouvoir résoudre server_name en adresse IP. server_name est de type sysname, sans valeur par défaut.

  • [ @mailserver_type = ] 'server_type'
    Type de serveur de messagerie. server_type est de type sysname, avec 'SMTP' comme valeur par défaut.

  • [ @port = ] port_number
    Numéro de port du serveur de messagerie. port_number est de type int, avec 25 comme valeur par défaut.

  • [ @username = ] 'username'
    Nom d'utilisateur servant lors de la connexion au serveur de messagerie. username est de type nvarchar(128), avec la valeur par défaut NULL. Lorsque ce paramètre possède la valeur NULL, la messagerie de base de données n'utilise pas d'authentification pour ce compte. Si le serveur de messagerie ne nécessite pas d'authentification, utilisez NULL comme nom d'utilisateur.

  • [ @password = ] 'password'
    Mot de passe servant lors de la connexion au serveur de messagerie. password est de type nvarchar(128), avec la valeur par défaut NULL. Il est inutile de fournir un mot de passe, sauf si un nom d'utilisateur est spécifié.

  • [ @use_default_credentials = ] use_default_credentials
    Spécifie si le courrier électronique doit être envoyé au serveur SMTP en utilisant les informations d'identification du moteur de base de données Moteur de base de données SQL Server. L'argument use_default_credentials est de type bit et sa valeur par défaut est 0. Lorsque ce paramètre a la valeur 1, la messagerie de base de données utilise les informations d'identification du moteur de base de données Moteur de base de données. Lorsqu'elle est définie sur 0, la messagerie de base de données envoie les paramètres @username et @password s'ils sont présents, sinon le courrier est envoyé sans ces paramètres.

  • [ @enable_ssl = ] enable_ssl
    Spécifie si la messagerie de base de données chiffre les communications à l'aide de la technologie SSL (Secure Sockets Layer). Enable_ssl est de type bit, avec la valeur par défaut 0.

  • [ @account_id = ] account_id OUTPUT
    Renvoie l'id de compte du nouveau compte. account_id est de type int et possède la valeur par défaut NULL.

Valeurs des codes de retour

0 (succès) ou 1 (échec)

Notes

La messagerie de base de données fournit des paramètres séparés pour @email_address, @display_name et @replyto_address. Le paramètre @email_address représente l'adresse à partir de laquelle le message est envoyé. Le paramètre @display_name représente le nom affiché dans le champ De : du message électronique. Le paramètre @replyto_address représente l'adresse vers laquelle les réponses au message seront envoyées. Par exemple, un compte utilisé pour l'Agent SQL Server peut envoyer des messages électroniques à partir d'une adresse de messagerie utilisée uniquement pour l'Agent SQL Server. Les messages provenant de cette adresse doivent afficher un nom convivial, afin que les destinataires puissent aisément déterminer que le message a été envoyé par l'Agent SQL Server. Si un destinataire répond au message, la réponse doit arriver à l'administrateur de bases de données et non à l'adresse utilisée par l'Agent SQL Server. Pour ce scénario, le compte utilise SqlAgent@Adventure-Works.com en tant qu'adresse électronique. Le nom complet devient SQL Server Agent Automated Mailer. Le compte utilise danw@Adventure-Works.com comme réponse à l'adresse, afin que les réponses aux messages envoyés à partir de ce compte arrivent à l'administrateur de bases de données au lieu de parvenir à l'adresse de messagerie de l'Agent SQL Server. En fournissant des paramètres indépendants pour ces trois paramètres, la messagerie de base de données vous permet de configurer des messages afin qu'ils répondent à vos besoins.

Le paramètre @mailserver_type est fourni pour la flexibilité des futures versions. SQL Server 2005 et versions ultérieures prennent en charge la valeur 'SMTP' pour @mailserver_type.

Lorsque la valeur de @use_default_credentials est définie sur 1, le courrier est envoyé au serveur SMTP en utilisant les informations d'identification du moteur de base de données SQL Server. Lorsque la valeur de @use_default_credentials est définie sur 0 tandis que les valeurs de @username et de @password sont spécifiées pour un compte, ce compte utilise l'authentification SMTP. @username et @password constituent les informations d'identification utilisées par le compte pour le serveur SMTP, et ne correspondent pas aux informations d'identification pour SQL Server ou le réseau dans lequel se trouve l'ordinateur.

La procédure stockée sysmail_add_account_sp se trouve dans la base de données msdb et appartient au schéma dbo. Cette procédure doit être exécutée avec un nom en trois parties si la base de données en cours 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.

Exemples

L'exemple suivant crée un compte nommé AdventureWorks Administrator. Ce compte utilise l'adresse de messagerie électronique dba@Adventure-Works.com en envoie du courrier électronique au serveur de messagerie SMTP smtp.Adventure-Works.com. Les messages électroniques envoyés à partir de ce compte affichent AdventureWorks Automated Mailer sur la ligne De : du message. Les réponses aux messages sont envoyés vers danw@Adventure-Works.com.

EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'AdventureWorks Administrator',
    @description = 'Mail account for administrative e-mail.',
    @email_address = 'dba@Adventure-Works.com',
    @display_name = 'AdventureWorks Automated Mailer',
    @mailserver_name = 'smtp.Adventure-Works.com' ;