SHOW ALERTS

Lista os alertas para os quais você tem privilégios de acesso. O comando pode ser usado para listar alertas para o banco de dados ou esquema atual/especificado, ou em toda a sua conta.

A saída retorna metadados e propriedades do alerta, ordenados lexicograficamente pelo nome do banco de dados, esquema e alerta (consulte Saída neste tópico para descrições das colunas de saída). Isso é importante se você deseja filtrar os resultados usando os filtros fornecidos.

Consulte também:

CREATE ALERT , ALTER ALERT, DROP ALERT , DESCRIBE ALERT

Sintaxe

SHOW [ TERSE ] ALERTS [ LIKE '<pattern>' ]
                      [ IN { ACCOUNT |
                             DATABASE [ <db_name> ] |
                             [ SCHEMA ] [ <schema_name> ]
                           }
                      ]
                      [ STARTS WITH '<name_string>' ]
                      [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

Parâmetros

TERSE

Retorna apenas um subconjunto das colunas de saída:

  • created_on

  • name

  • kind (mostra NULL para todos os alertas)

  • database_name

  • schema_name

  • schedule

  • state

LIKE 'pattern'

Filtra a saída do comando pelo nome do objeto. O filtro utiliza correspondência de padrão que não diferencia maiúsculas e minúsculas, com suporte para caracteres curinga SQL (% e _).

Por exemplo, os seguintes padrões retornam os mesmos resultados:

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
Copy
IN ACCOUNT | [ DATABASE ] {db_name} | [ SCHEMA ] {schema_name}

Especifica o escopo do comando, que determina se o comando lista registros apenas para o banco de dados ou esquema atual/especificado ou em toda a sua conta:

As palavras-chave DATABASE e SCHEMA não são necessárias; você pode definir o escopo especificando apenas o banco de dados ou o nome do esquema. Da mesma forma, o banco de dados ou o nome do esquema não é necessário se a sessão tiver um banco de dados em uso atualmente.

  • Se DATABASE ou SCHEMA for especificado sem um nome e a sessão não tiver atualmente um banco de dados em uso, o parâmetro não terá efeito sobre a saída.

  • Se SCHEMA for especificado com um nome e a sessão não tiver atualmente um banco de dados em uso, o nome do esquema deverá ser totalmente qualificado com o nome do banco de dados (por exemplo, testdb.testschema).

Padrão: depende se a sessão tem ou não um banco de dados em uso no momento:

  • Um banco de dados está em uso: DATABASE é o padrão (ou seja, o comando retorna os objetos nos quais você tem privilégios para visualizar no banco de dados).

  • Nenhum banco de dados está em uso: ACCOUNT é o padrão (ou seja, o comando retorna os objetos que você tem privilégios de visualização em sua conta).

STARTS WITH 'name_string'

Filtra a saída do comando com base na cadeia de caracteres que aparecem no início do nome do objeto. A cadeia de caracteres deve ser delimitada entre aspas simples e há distinção entre maiúsculas e minúsculas. Por exemplo, os seguintes retornam resultados diferentes:

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...
Copy
LIMIT rows [ FROM 'name_string' ]

Opcionalmente, limita o número máximo de linhas retornadas, ao mesmo tempo em que permite a «paginação» dos resultados. Observe que o número real de linhas retornadas pode ser inferior ao limite especificado (por exemplo, o número de objetos existentes é menor que o limite especificado).

A subcláusula opcional FROM 'name_string' serve efetivamente como um “cursor” para os resultados. Isso permite obter o número especificado de linhas seguindo a primeira linha cujo nome do objeto corresponde à cadeia de caracteres especificada:

  • A cadeia de caracteres deve ser delimitada entre aspas simples e há distinção entre maiúsculas e minúsculas.

  • A cadeia de caracteres não precisa incluir o nome completo do objeto; também é permitido usar nomes parciais.

Padrão: nenhum valor (nenhum limite é aplicado à saída)

Nota

Ambos FROM 'name_string' e STARTS WITH 'name_string' podem ser combinados na mesma instrução; no entanto, ambas as condições devem ser cumpridas ou elas se cancelam mutuamente e nenhum resultado é retornado.

Além disso, os objetos são devolvidos em ordem lexicográfica por nome, portanto FROM 'name_string' só retorna linhas com um valor lexicográfico maior que as linhas retornadas por STARTS WITH 'name_string'.

Por exemplo:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' não retornaria nenhum resultado.

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' não retornaria nenhum resultado.

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' retornariam resultados (se alguma linha corresponder às cadeias de caracteres de entrada).

Saída

O comando de saída fornece propriedades de alerta e metadados nas seguintes colunas:

| created_on | name | database_name | schema_name | owner | comment | warehouse | schedule | state | condition | action |
Copy

Coluna

Descrição

created_on

Data e hora em que o alerta foi criado.

name

Nome do alerta.

database_name

Banco de dados no qual o alerta é armazenado.

schema_name

Esquema no qual o alerta é armazenado.

owner

Função proprietária do alerta (ou seja, com o privilégio OWNERSHIP no alerta)

comment

Comentário para o alerta.

warehouse

Warehouse que fornece os recursos necessários para a execução do alerta.

schedule

Cronograma para avaliar a condição para o alerta.

state

Especifica o estado do alerta. Um alerta pode ter um dos seguintes estados:

  • suspended

  • started

condition

O texto da instrução SQL que serve como a condição quando o alerta deve ser acionado.

action

O texto da instrução SQL que deve ser executada quando o alerta é acionado.

Requisitos de controle de acesso

Uma função usada para executar esse comando SQL deve ter pelo menos um dos seguintes privilégios, no mínimo:

Privilégio

Objeto

Notas

OPERATE ou OWNERSHIP

Alerta

OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege).

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

  • Só retorna linhas para um proprietário de alerta (ou seja, a função com o privilégio OWNERSHIP em um alerta) ou uma função com o privilégio OPERATE em um alerta.

  • O comando não precisa de um warehouse em funcionamento para ser executado.

  • O valor de LIMIT rows não pode exceder 10000. Se LIMIT rows for omitido, o comando resulta em um erro se o conjunto de resultados for maior que 10.000 linhas.

  • Para pós-processar a saída deste comando, você pode usar a função RESULT_SCAN, que trata a saída como uma tabela que pode ser consultada.