SHOW PROCEDURES

Lista os procedimentos armazenados para os quais você tem privilégios de acesso.

Para obter mais informações sobre os procedimentos armazenados, consulte Como trabalhar com procedimentos armazenados.

Consulte também:

ALTER PROCEDURE , CREATE PROCEDURE , DROP PROCEDURE , DESCRIBE PROCEDURE

Sintaxe

SHOW PROCEDURES [ LIKE '<pattern>' ]
                [ IN
                     {
                       ACCOUNT                  |

                       DATABASE                 |
                       DATABASE <database_name> |

                       SCHEMA                   |
                       SCHEMA <schema_name>     |
                       <schema_name>
                     }
                ]
Copy

Parâmetros

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%' ...
[ IN ... ]

Opcionalmente, especifica o escopo do comando. Especifique um dos seguintes:

ACCOUNT

Retorna registros para toda a conta.

DATABASE, . DATABASE db_name

Retorna registros do banco de dados atual em uso ou de um banco de dados especificado (db_name).

Se você especificar DATABASE sem db_name e nenhum banco de dados estiver em uso, a palavra-chave não terá efeito sobre a saída.

SCHEMA, . SCHEMA schema_name, . schema_name

Retorna registros do esquema atual em uso ou de um esquema especificado (schema_name).

SCHEMA é opcional se um banco de dados estiver em uso ou se você especificar o schema_name totalmente qualificado (por exemplo, db.schema).

Se nenhum banco de dados estiver em uso, a especificação SCHEMA não terá efeito sobre a saída.

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

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

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

Notas de uso

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

  • O comando retorna um máximo de 10 mil registros para o tipo de objeto especificado, como ditado pelos privilégios de acesso para a função usada para executar o comando; quaisquer registros acima do limite 10 mil não são retornados, mesmo com um filtro aplicado.

    Para visualizar resultados para os quais existem mais de 10.000 registros, consulte a visualização correspondente (se houver) em Snowflake Information Schema.

  • 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.

Saída

A saída do comando fornece as propriedades das colunas e metadados nas seguintes colunas:

| created_on | name | schema_name | is_builtin | is_aggregate | is_ansi | min_num_arguments | max_num_arguments | arguments | description | catalog_name | is_table_function | valid_for_clustering | is_secure |
Copy

Coluna

Descrição

created_on

O carimbo de data/hora em que o procedimento armazenado foi criado.

name

O nome do procedimento armazenado.

schema_name

O nome do esquema no qual o procedimento armazenado existe.

is_builtin

Y se o procedimento armazenado for embutido (em vez de definido pelo usuário); caso contrário, N.

is_aggregate

Não aplicável atualmente.

is_ansi

Y se o procedimento armazenado estiver definido na norma ANSI; caso contrário, N.

min_num_arguments

O número mínimo de argumentos.

max_num_arguments

O número máximo de argumentos.

arguments

Os tipos de dados dos argumentos e dos tipos de retorno.

description

Uma descrição do procedimento armazenado.

catalog_name

O nome do banco de dados no qual o procedimento armazenado existe.

is_table_function

Não aplicável atualmente.

valid_for_clustering

Não aplicável atualmente.

is_secure

Y se o procedimento armazenado for um procedimento armazenado seguro; caso contrário, N.

Exemplos

Mostrar todos os procedimentos:

SHOW PROCEDURES;
Copy

Este exemplo mostra como usar SHOW PROCEDURE em um procedimento armazenado que tem um parâmetro. Isto também mostra como limitar a lista de procedimentos àqueles que correspondem à expressão regular especificada.

SHOW PROCEDURES LIKE 'area_of_%';
+-------------------------------+----------------+--------------------+------------+--------------+---------+-------------------+-------------------+------------------------------------+------------------------+-----------------------+-------------------+----------------------+-----------+
| created_on                    | name           | schema_name        | is_builtin | is_aggregate | is_ansi | min_num_arguments | max_num_arguments | arguments                          | description            | catalog_name          | is_table_function | valid_for_clustering | is_secure |
|-------------------------------+----------------+--------------------+------------+--------------+---------+-------------------+-------------------+------------------------------------+------------------------+-----------------------+-------------------+----------------------+-----------|
| 1967-06-23 00:00:00.123 -0700 | AREA_OF_CIRCLE | TEMPORARY_DOC_TEST | N          | N            | N       |                 1 |                 1 | AREA_OF_CIRCLE(FLOAT) RETURN FLOAT | user-defined procedure | TEMPORARY_DOC_TEST_DB | N                 | N                    | N         |
+-------------------------------+----------------+--------------------+------------+--------------+---------+-------------------+-------------------+------------------------------------+------------------------+-----------------------+-------------------+----------------------+-----------+
Copy

As colunas de saída são similares às colunas de saída para SHOW FUNCTIONS e SHOW USER FUNCTIONS. Para procedimentos armazenados, algumas destas colunas não são atualmente significativas (por exemplo, is_aggregate, is_table_function, valid_for_clustering), mas estão reservadas para uso futuro.