EXECUTE ALERT

Executa manualmente um alerta independente da programação do alerta.

Consulte também:

CREATE ALERT , ALTER ALERT , DROP ALERT , SHOW ALERTS , DESCRIBE ALERT

Sintaxe

EXECUTE ALERT <name>
Copy

Parâmetros

name

Identificador do alerta a ser executado.

Se o identificador contiver espaços ou caracteres especiais, toda a cadeia de caracteres deverá ser delimitada por aspas duplas. Os identificadores delimitados por aspas duplas também diferenciam letras maiúsculas de minúsculas.

Para obter mais detalhes, consulte Requisitos para identificadores.

Requisitos de controle de acesso

Uma função usada para executar este comando SQL deve ter os seguintes privilégios no mínimo:

Privilégio

Objeto

Notas

EXECUTE ALERT

Conta

OWNERSHIP ou OPERATE

Alerta

USAGE

Warehouse

Necessário no warehouse utilizado para o alerta.

Observe que operar em qualquer objeto de um esquema também requer o privilégio USAGE no banco de dados e esquema principais.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • Os alertas sempre são executados com os privilégios do proprietário do alerta, mesmo que uma função diferente com o privilégio OPERATE use EXECUTE ALERT para executar o alerta.

  • Se o alerta estiver suspenso no momento, o comando EXECUTE ALERT executa o alerta, mas não o retoma. O alerta permanece suspenso.

  • Se o alerta estiver em execução no momento (o que significa que o estado do alerta na saída da função de tabela ALERT_HISTORY ou na exibição ALERT_HISTORY é EXECUTING), o comando EXECUTE ALERT agenda outra execução do alerta para iniciar imediatamente após a execução atual ser concluída.

  • Se o alerta estiver agendado no momento (o que significa que o estado do alerta na saída da função de tabela ALERT_HISTORY ou na exibição ALERT_HISTORY é SCHEDULED), a execução agendada será substituída pela execução solicitada e o carimbo de data/hora atual será definido como o horário agendado.

    No entanto, se o tempo programado tiver passado, mas o alerta ainda não tiver transitado para o estado EXECUTING, então a execução programada ocorrerá como de costume. (A execução programada não é substituída pela execução solicitada pelo comando EXECUTE ALERT.)

Exemplos

A instrução a seguir aciona manualmente um alerta chamado myalert:

EXECUTE ALERT myalert;
Copy