A visão routines contém todas as funções e procedimentos no banco de dados corrente. São mostradas apenas as funções e procedimentos que o usuário corrente tem acesso (por ser o dono, ou por ter algum privilégio).
Tabela 35.43. Colunas de routines
Coluna Tipo de dados Descrição |
|---|
Nome do banco de dados que contém a função (sempre o banco de dados corrente) |
Nome do esquema que contém a função |
O “nome específico” da função. Este é o nome que identifica unicamente a função no esquema, mesmo se o nome real da função estiver sobrecarregado. O formato do nome específico não está definido, deve ser usado apenas para compará-lo com outras instâncias de nomes específicos de rotinas. |
Nome do banco de dados que contém a função (sempre o banco de dados corrente) |
Nome do esquema que contém a função |
Nome da função (pode haver duplicidade em caso de sobrecarga) |
|
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Retorna o tipo de dados da função, se for um tipo de dados integrado,
ou |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Sempre nula, porque esta informação não aplica a tipos de dados retornados no PostgreSQL |
Nome do banco de dados onde o tipo de dados retornado pela função está definido (sempre o banco de dados corrente). Nula para procedimento. |
Nome do esquema onde o tipo de dados retornado pela função está definido. Nula para procedimento. |
Nome do tipo de dados retornado pela função. Nulo para um procedimento. |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Sempre nula, porque as matrizes sempre têm cardinalidade máxima ilimitada no PostgreSQL |
Identificador do descritor de tipo de dados do tipo de dados retornado pela função, único entre os descritores de tipo de dados pertencentes à função. É usado principalmente para realizar junções com outras instâncias desses identificadores. (O formato específico do identificador não está definido, não havendo garantia de que permanecerá o mesmo nas versões futuras.) |
Se a função for uma função SQL, então
|
O código-fonte da função (nula se a função não pertencer à
função de banco de dados ativa no momento).
(Segundo o padrão SQL, esta coluna só é
aplicável se |
Se esta função for uma função C, então o nome
externo (símbolo de ligação) da função; senão nula.
(Isto resulta no mesmo valor mostrado em
|
A linguagem em que a função está escrita |
Sempre |
Se a função for declarada imutável (chamada de determinística no
padrão SQL), então |
Sempre |
Se a função retornar automaticamente nulo se algum de seus
argumentos for nulo, então |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Sempre |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Se a função for executada com os privilégios do usuário corrente,
então |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
No momento sempre |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Aplica-se a uma funcionalidade não disponível no PostgreSQL |
Exemplo 35.41. Exemplo do tradutor
Informações sobre função
Uso do esquema de informações para mostrar as informações sobre a função maior_1000 no banco de dados cristina da usuária cristina. As colunas com valores nulo foram omitdas do resultado. Veja a criação da função maior_1000 em Exemplo da visão check_constraint_routine_usage.
SELECT * FROM information_schema.routines WHERE routine_name = 'maior_1000'\gx
-[ RECORD 1 ]-----------------------+-------------------------
specific_catalog | cristina
specific_schema | public
specific_name | maior_1000_34234
routine_catalog | cristina
routine_schema | public
routine_name | maior_1000
routine_type | FUNCTION
data_type | boolean
type_udt_catalog | cristina
type_udt_schema | pg_catalog
type_udt_name | bool
dtd_identifier | 0
routine_body | EXTERNAL
routine_definition | +
| BEGIN +
| IF @valor > 1000 THEN+
| RETURN true; +
| ELSE +
| RETURN false; +
| END IF; +
| END +
|
external_language | PLPGSQL
parameter_style | GENERAL
is_deterministic | NO
sql_data_access | MODIFIES
is_null_call | NO
schema_level_routine | YES
max_dynamic_result_sets | 0
security_type | INVOKER
as_locator | NO
is_udt_dependent | NO