Partilhar via


sysmail_add_account_sp (Transact-SQL)

Cria uma nova conta do Database Mail que contém informações sobre uma conta SMTP.

Ícone de vínculo de tópicoConvenções de sintaxe 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. Este 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 email do endereço SqlAgent@Adventure-Works.com.

  • [ @display_name = ] 'display_name'
    O nome para exibição a ser usado em mensagens de email desta conta. display_name é nvarchar(128), com um padrão 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 são enviadas as respostas a mensagens desta conta. replyto_address é nvarchar(128), com um padrão NULL. Por exemplo, respostas para uma conta do SQL Server Agent podem ir para o administrador de banco de dados, danw@Adventure-Works.com.

  • [ @description = ] 'description'
    É uma descrição da conta. description é nvarchar(256), com um padrão 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 server_name para um endereço IP. server_name é sysname, sem padrão.

  • [ @mailserver_type = ] 'server_type'
    O tipo de servidor de email. server_type é sysname, com um padrão 'SMTP'.

  • [ @port = ] port_number
    O número da porta do servidor de email. port_number é int, com um padrão 25.

  • [ @username = ] 'username'
    O nome de usuário a ser usado para fazer logon no servidor de email. username é nvarchar(128), com um padrão NULL. Quando este parâmetro for NULL, o Database Mail não usa autenticação para esta conta. Se o servidor de email não requerer autenticação, use NULL para o nome de usuário.

  • [ @password = ] 'password'
    A senha a ser usada para fazer logon no servidor de email. password é nvarchar(128), com um padrão NULL. Não há necessidade em 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 0. Quando este parâmetro for 1, o Database Mail usa as credenciais do Mecanismo de Banco de Dados. Quando este parâmetro for 0, o Database Mail envia os parâmetros @username e @password, se estiverem presentes; caso contrário, envia o email sem os parâmetros @username e @password.

  • [ @enable_ssl = ] enable_ssl
    Especifica se o Database Mail criptografa a comunicação usando o Protocolo SSL. Enable_ssl é bit, com um padrão 0.

  • [ @account_id = ] account_id OUTPUT
    Retorna o ID da nova conta. account_id é int, com um padrão NULL.

Valores de código de retorno

0 (êxito) 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 a partir do qual a mensagem é enviada. O parâmetro @display_name é o nome mostrado no campo De: da mensagem de email. O parâmetro @replyto_address é o endereço onde serão enviadas as respostas à mensagem de email. Por exemplo, uma conta usada para o SQL Server Agent pode enviar mensagens de email a partir de um endereço de email usado apenas para o SQL Server Agent. As mensagens desse endereço devem exibir um nome amigável, de maneira que os destinatários possam determinar facilmente que o SQL Server Agent enviou a mensagem. Se um destinatário responder à mensagem, a resposta deve ir para o administrador do banco de dados, em vez do endereço usado pelo SQL Server Agent. Para este cenário, a conta usa SqlAgent@Adventure-Works.com como o endereço de email. O nome para exibição é definido como SQL Server Agent Automated Mailer. A conta usa danw@Adventure-Works.com como o endereço de resposta, portanto as respostas às mensagens enviadas a partir 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 é fornecido para flexibilidade em versões futuras. O SQL Server 2005 e posterior oferece suporte ao valor 'SMTP' para @mailserver_type.

Quando @use_default_credentials é 1, o email é enviado ao servidor SMTP usando as credenciais do Mecanismo de banco de dados do SQL Server. Quando @use_default_credentials é 0 e @username e @password são especificados para uma conta, a conta usa autenticação SMTP. @username e @password são as credenciais usadas pela conta para o servidor SMTP, não as credenciais do SQL Server ou da rede na qual o computador está.

O procedimento armazenado sysmail_add_account_sp está no banco de dados msdb e pertence ao esquema dbo. O procedimento deverá ser executado com um nome de três partes se o banco de dados atual não for msdb.

Permissões

As permissões de execução deste procedimento usam como padrão membros da função de servidor fixa sysadmin.

Exemplos

O exemplo a seguir cria uma conta denominada AdventureWorks2008R2 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 desta conta mostram AdventureWorks2008R2 Automated Mailer na linha De: da mensagem. As respostas às mensagens são direcionadas para danw@Adventure-Works.com.

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