Compartilhar via


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 msdbfor .

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