Partilhar via


sp_notify_operator (Transact-SQL)

Aplica-se: SQL Server

Envia uma mensagem de email a um operador usando o Database Mail.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_notify_operator
    [ [ @profile_name = ] N'profile_name' ]
    [ , [ @id = ] id ]
    [ , [ @name = ] N'name' ]
    [ , [ @subject = ] N'subject' ]
    [ , [ @body = ] N'body' ]
    [ , [ @file_attachments = ] N'file_attachments' ]
    [ , [ @mail_database = ] N'mail_database' ]
[ ; ]

Argumentos

@profile_name [ = ] N'profile_name'

O nome do perfil do Database Mail a ser usado para enviar a mensagem. @profile_name é sysname, com um padrão de NULL. Se @profile_name não for especificado, o perfil padrão do Database Mail será usado.

@id [ = ] id

O identificador do operador para envio da mensagem. @id é int, com um padrão de NULL.

Um dos @id ou @name deve ser especificado.

@name [ = ] N'nome'

O nome do operador para o qual enviar a mensagem. @name é sysname, com um padrão de NULL.

Um dos @id ou @name deve ser especificado.

Um endereço de email deve ser definido para o operador antes que ele possa receber mensagens.

@subject [ = ] N'sujeito'

O assunto da mensagem de email. @subject é nvarchar(256), com um padrão de NULL.

@body [ = ] N'corpo'

O corpo da mensagem de email. @body é nvarchar(max), com um padrão de NULL.

@file_attachments [ = ] N'file_attachments'

O nome de um arquivo a ser anexado à mensagem de email. @file_attachments é nvarchar(512), com um padrão de NULL.

@mail_database [ = ] N'mail_database'

Especifica o nome do banco de dados host de email. @mail_database é sysname, com um padrão de msdb. Se nenhum @mail_database for especificado, o msdb banco de dados será usado por padrão.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

Envia a mensagem especificada ao endereço de email do operador especificado. Se o operador não tiver um endereço de e-mail configurado, sp_notify_operator retornará um erro.

O Database Mail e um banco de dados host de email devem ser configurados para que uma notificação possa ser enviada a um operador.

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.

Outros usuários devem receber uma das seguintes funções de banco de dados fixas do msdb SQL Server Agent no banco de dados:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

Para obter detalhes sobre as permissões dessas funções, consulte Funções de banco de dados fixas do SQL Server Agent.

Exemplos

O exemplo a seguir envia um email de notificação ao operador François Ajenstat que usa o perfil do Database Mail AdventureWorks Administrator . O assunto do email é Test Notification. A mensagem de email contém a frase, This is a test of notification via e-mail.

USE msdb;
GO

EXEC dbo.sp_notify_operator
    @profile_name = N'AdventureWorks Administrator',
    @name = N'François Ajenstat',
    @subject = N'Test Notification',
    @body = N'This is a test of notification via e-mail';
GO