sysmail_add_account_sp (Transact-SQL)
Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure
Cria uma nova conta do Database Mail que contém informações sobre uma conta SMTP.
Convenções de sintaxe de Transact-SQL
Sintaxe
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 ]
[ ; ]
Argumentos
@account_name [ = ] 'account_name'
O nome da conta a ser adicionada. @account_name é sysname, sem padrão.
@email_address [ = ] 'email_address'
O endereço de email a partir do qual a mensagem será enviada. Esse endereço deve ser um endereço de email na Internet. @email_address é nvarchar(128), sem padrão. Por exemplo, uma conta do SQL Server Agent pode enviar emails do endereço SqlAgent@adventure-works.com
.
@display_name [ = ] 'display_name'
O nome para exibição a ser usado em mensagens de email enviadas por essa conta. @display_name é nvarchar(128), com um padrão de NULL
. Por exemplo, uma conta do SQL Server Agent pode exibir o nome SQL Server Agent Automated Mailer
em mensagens de email.
@replyto_address [ = ] 'replyto_address'
O endereço para o qual as respostas às mensagens dessa conta são enviadas. @replyto_address é nvarchar(128), com um padrão de NULL
. Por exemplo, as respostas a uma conta do SQL Server Agent podem ir para o administrador do banco de dados, danw@adventure-works.com
.
@description [ = ] 'descrição'
Uma descrição para a conta. @description é nvarchar(256), com um padrão de NULL
.
@mailserver_name [ = ] 'server_name'
O nome ou o endereço IP do servidor de email SMTP a ser usado para esta conta. O computador que executa o SQL Server deve ser capaz de resolver o @mailserver_name para um endereço IP. @mailserver_name é sysname, sem padrão.
@mailserver_type [ = ] 'server_type'
O tipo de servidor de email. @mailserver_type é sysname, com um padrão de SMTP
.
@port [ = ] port_number
O número de porta do servidor de email. @port é int, com um padrão de 25
.
@username [ = ] 'nome de usuário'
O novo nome de usuário a ser usado para fazer logon no servidor de email. @username é nvarchar(128), com um padrão de NULL
. Quando esse parâmetro é NULL
, o Database Mail não usa autenticação para essa conta. Se o servidor de e-mail não exigir autenticação, use NULL
para o nome de usuário.
@password [ = ] 'senha'
A nova senha a ser usada para fazer logon no servidor de email. @password é nvarchar(128), com um padrão de NULL
. Não há necessidade de fornecer uma senha, a menos que um nome de usuário seja especificado.
@use_default_credentials [ = ] use_default_credentials
Especifica se o email deve ser enviado para o servidor SMTP usando as credenciais do Mecanismo de Banco de Dados do SQL Server. @use_default_credentials é bit, com um padrão de 0
. Quando esse parâmetro é 1
, o Database Mail usa as credenciais do Mecanismo de Banco de Dados. Quando esse parâmetro é 0
, o Database Mail envia os parâmetros @username e @password , se presentes, caso contrário, envia e-mails sem @username e @password parâmetros.
@enable_ssl [ = ] enable_ssl
Especifica se o Database Mail criptografa a comunicação usando o Secure Sockets Layer. @enable_ssl é bit, com um padrão de 0
.
@account_id [ = ] account_id SAÍDA
Retorna a ID da conta para a nova conta. @account_id é int, com um padrão de NULL
.
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Comentários
O Database Mail fornece parâmetros separados para @email_address, @display_name e @replyto_address. O parâmetro @email_address é o endereço do qual a mensagem é enviada. O parâmetro @display_name é o nome mostrado no From:
campo da mensagem de email. O parâmetro @replyto_address é o endereço para o qual as respostas à mensagem de email serão enviadas. Por exemplo, uma conta usada para o SQL Server Agent pode enviar mensagens de email de um endereço de email usado apenas para o SQL Server Agent. As mensagens desse endereço devem exibir um nome amigável, para que os destinatários possam determinar facilmente que o SQL Server Agent enviou a mensagem. Se um destinatário responder à mensagem, a resposta deverá ir para o administrador do banco de dados em vez do endereço usado pelo SQL Server Agent. Para esse cenário, a conta usa SqlAgent@adventure-works.com
como endereço de email. O nome de exibição é definido como SQL Server Agent Automated Mailer
. A conta usa danw@adventure-works.com
como endereço de resposta, portanto, as respostas às mensagens enviadas dessa conta vão para o administrador do banco de dados em vez do endereço de email do SQL Server Agent. Ao fornecer configurações independentes para esses três parâmetros, o Database Mail permite configurar mensagens adequadas às suas necessidades.
O parâmetro @mailserver_type suporta o valor SMTP
.
Quando @use_default_credentials é 1
, o email é enviado para o servidor SMTP usando as credenciais do Mecanismo de Banco de Dados do SQL Server. Quando @use_default_credentials é 0
e um @username e @password são especificados para uma conta, a conta usa a autenticação SMTP. O @username e o @password são as credenciais que a conta usa para o servidor SMTP, não as credenciais do SQL Server ou da rede em que o computador está.
O procedimento sysmail_add_account_sp
armazenado está no msdb
banco de dados e pertence ao dbo
esquema. O procedimento deve ser executado com um nome de três partes se o banco de dados atual não msdb
for .
Permissões
Esse procedimento armazenado pertence à função db_owner . Você pode conceder EXECUTE
permissões para qualquer usuário, mas essas permissões podem ser substituídas durante uma atualização do SQL Server.
Exemplos
O exemplo a seguir cria uma conta denominada AdventureWorks Administrator
. A conta usa o endereço de email dba@adventure-works.com
e envia correio ao servidor de email SMTP smtp.adventure-works.com
. As mensagens de email enviadas dessa conta são exibidas AdventureWorks Automated Mailer
na From:
linha da mensagem. As respostas às mensagens são direcionadas para 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';