Partager via


sysmail_add_account_sp (Transact-SQL)

S’applique à : SQL Server Azure SQL Managed Instance

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

Conventions de la syntaxe 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 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 de messagerie Internet. @email_address est nvarchar(128), sans valeur par défaut. Par exemple, un compte pour SQL Server Agent peut envoyer un e-mail à 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 nvarchar(128), avec la valeur par défaut NULL. Par exemple, un compte pour SQL Server Agent peut afficher le nom SQL Server Agent Automated Mailer sur les messages électroniques.

[ @replyto_address = ] 'replyto_address'

Adresse à laquelle les réponses aux messages de ce compte sont envoyées. @replyto_address est nvarchar(128), avec la valeur par défaut NULL. Par exemple, les réponses à un compte pour SQL Server Agent peuvent accéder à l’administrateur danw@adventure-works.comde base de données.

[ @description = ] 'description'

Description du compte. @description est nvarchar(256), avec la 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 être en mesure de résoudre le @mailserver_name en adresse IP. @mailserver_name est sysname, sans valeur par défaut.

[ @mailserver_type = ] 'server_type'

Type de serveur de messagerie. @mailserver_type est sysname, avec la valeur par défaut SMTP.

[ @port = ] port_number

Numéro de port du serveur de messagerie. @port est int, avec la valeur par défaut 25.

[ @username = ] 'username'

Nom d'utilisateur servant lors de la connexion au serveur de messagerie. @username est nvarchar(128), avec la valeur par défaut NULL. Lorsque ce paramètre est NULL, Database Mail n’utilise pas l’authentification pour ce compte. Si le serveur de messagerie ne nécessite pas d’authentification, utilisez NULL le nom d’utilisateur.

[ @password = ] 'password'

Mot de passe servant lors de la connexion au serveur de messagerie. @password est nvarchar(128), avec la valeur par défaut NULL. Il n’est pas nécessaire de fournir un mot de passe, sauf si un nom d’utilisateur est spécifié.

[ @use_default_credentials = ] use_default_credentials

Spécifie s’il faut envoyer le courrier au serveur SMTP à l’aide des informations d’identification du Moteur de base de données SQL Server. @use_default_credentials est bit, avec la valeur par défaut 0. Lorsque ce paramètre est 1le cas, Database Mail utilise les informations d’identification du Moteur de base de données. Lorsque ce paramètre est 0le cas, la messagerie de base de données envoie les paramètres @username et @password le cas échéant, sinon envoie du courrier sans @username et @password paramètres.

[ @enable_ssl = ] enable_ssl

Spécifie si la messagerie de base de données chiffre la communication à l’aide de Secure Sockets Layer. @enable_ssl est bit, avec la valeur par défaut 0.

[ @account_id = ] sortie account_id

Retourne l’ID de compte du nouveau compte. @account_id est int, avec la valeur par défaut NULL.

Valeurs des codes de retour

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

Notes

La messagerie de base de données fournit des paramètres distincts pour @email_address, @display_name et @replyto_address. Le paramètre @email_address est l’adresse à partir de laquelle le message est envoyé. Le paramètre @display_name est le nom affiché dans le From: champ du message électronique. Le paramètre @replyto_address est l’adresse où les réponses au message électronique seront envoyées. Par exemple, un compte utilisé pour SQL Server Agent peut envoyer des messages électroniques à partir d’une adresse de messagerie utilisée uniquement pour SQL Server Agent. Les messages de cette adresse doivent afficher un nom convivial, afin que les destinataires puissent facilement déterminer que SQL Server Agent a envoyé le message. Si un destinataire répond au message, la réponse doit accéder à l’administrateur de base de données plutôt qu’à l’adresse utilisée par SQL Server Agent. Pour ce scénario, le compte utilise SqlAgent@adventure-works.com comme adresse de messagerie. Le nom complet est défini sur SQL Server Agent Automated Mailer. Le compte utilise danw@adventure-works.com comme réponse à l’adresse. Par conséquent, les réponses aux messages envoyés à partir de ce compte sont envoyées à l’administrateur de base de données plutôt qu’à l’adresse de messagerie pour SQL Server Agent. 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 prend en charge la valeur SMTP.

Lorsque @use_default_credentials est1, le courrier est envoyé au serveur SMTP à l’aide des informations d’identification de l’Moteur de base de données SQL Server. Lorsque @use_default_credentials est 0 et qu’un @username et @password sont spécifiés pour un compte, le compte utilise l’authentification SMTP. Les @username et les @password sont les informations d’identification que le compte utilise pour le serveur SMTP, et non les informations d’identification pour SQL Server ou le réseau sur lequel l’ordinateur est activé.

La procédure sysmail_add_account_sp stockée se trouve dans la msdb base de données et appartient au dbo schéma. 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 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 s’affichent AdventureWorks Automated Mailer sur la From: ligne du message. Les réponses aux messages sont envoyés vers danw@adventure-works.com.

EXEC 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';