Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Adicionar uma conta do Database Mail a um perfil (T-SQL)


No SQL Server, o Database Mail usa perfis para enviar o email em vez de contas diretamente.

Portanto, você deve primeiro criar um perfil e criar uma conta e, em seguida, adicionar a conta ao perfil. Você também precisa conceder um usuário no msdb acesso ao banco de dados ao perfil.

Para adicionar uma conta do Database Mail a um perfil com T-SQL, use o sysmail_add_profileaccount_sp procedimento armazenado no msdb base de dados.

Exemplo


Aqui está um exemplo de como adicionar uma conta do Database Mail a um perfil do Database Mail usando T-SQL.
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp  
    @profile_name = 'DB Admin Profile',  
    @account_name = 'DB Admin',  
    @sequence_number = 1;

Neste caso eu adiciono a conta “DB Admin” ao perfil “DB Admin Profile”.

Isso pressupõe que o perfil e a conta já existam.

Você pode adicionar várias contas a um perfil do Database Mail. O número de sequência determina a ordem em que as contas são usadas no perfil. O Database Mail começa com a conta que possui o número de sequência mais baixo. Se essa conta falhar, a conta com o próximo número de sequência mais alto será usada e assim por diante.

Se existir mais de uma conta com o mesmo número de sequência, o Database Mail usará apenas uma dessas contas para uma determinada mensagem de email.

No entanto, não há garantia de que a mesma conta será usada para mensagens subsequentes. Por exemplo, se duas contas compartilharem um número de sequência 1, você poderá receber alguns e-mails de uma conta e outros da outra.

Especificar IDs de conta/perfil


Você também pode especificar o ID do perfil e/ou o ID da conta em vez de seus nomes.

Portanto, poderíamos alterar o exemplo anterior para algo assim:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp  
    @profile_id = 1,  
    @account_id = 1,  
    @sequence_number = 1;

Obviamente, isso pressupõe que esses são os IDs das contas em questão.

Observe que o nome ou o ID devem ser fornecidos.

Além disso, ao fornecer os IDs, eles são fornecidos como int .

Observe que o sysmail_add_profileaccount_sp procedimento armazenado está no msdb banco de dados e é de propriedade do dbo esquema. Portanto, você precisará usar a nomenclatura de três partes se executá-la de fora do msdb base de dados.