42.24. pg_proc

O catálogo pg_proc armazena informações sobre as funções (ou procedimentos). Para obter informações adicionais deve ser consultado o comando CREATE FUNCTION e a Seção 31.3.

A tabela contém dados para funções de agregação assim como para funções simples. Se proisagg for verdade, deve existir uma linha correspondente em pg_aggregate.

Tabela 42-24. Colunas de pg_proc

Nome Tipo Referencia Descrição
proname name   Nome da função
pronamespace oid pg_namespace.oid OID do espaço de nomes que contém esta função.
proowner int4 pg_shadow.usesysid Dono da função
prolang oid pg_language.oid Linguagem de implementação ou interface de chamada desta função
proisagg bool   Verdade se a função for uma função de agregação
prosecdef bool   Verdade se a função for uma função definidora de segurança (ou seja, uma função "setuid")
proisstrict bool   Verdade se a função retorna nulo quando algum argumento de chamada é nulo. Neste caso, na verdade, a função nem vai ser chamada. As funções que não são "estritas" devem estar preparadas para tratar entradas nulas.
proretset bool   Verdade se a função retorna um conjunto (ou seja, vários valores do tipo de dado especificado)
provolatile char   provolatile informa se o resultado da função depende apenas de seus argumentos de entrada, ou é afetada por fatores externos. Valor igual a i para as funções "imutáveis", que sempre retornam o mesmo resultado para as mesmas entradas. Valor igual a s para as funções "estáveis", cujos resultados (para entradas fixas) não mudam dentro de uma mesma varredura. Valor igual a v para as funções "voláteis", cujos resultados podem mudar a qualquer instante (Também deve ser utilizado v para as funções com efeitos colaterais, para que as chamadas às mesmas não sejam otimizadas).
pronargs int2   Número de argumentos
prorettype oid pg_type.oid Tipo de dado do valor retornado
proargtypes oidvector pg_type.oid Matriz contendo os tipos de dado dos argumentos da função
proargnames text[]   Matriz contendo os nomes dos argumentos das funções. Os argumentos sem nome são definidos na matriz como cadeias de caracteres vazias. Se nenhum dos argumentos tiver nome, este campo pode ser nulo.
prosrc text   Informa ao tratador da função como chamar a função. Podendo ser o código fonte da função para as linguagens interpretadas, o símbolo de ligação, o nome do arquivo, ou qualquer outra coisa, dependendo da linguagem de implementação/convenção de chamada.
probin bytea   Informações adicionais sobre como chamar a função. Novamente, a interpretação é específica da linguagem.
proacl aclitem[]   Privilégios de acesso; para obter detalhes devem ser consultados os comandos GRANT e REVOKE.

Para as funções compiladas, tanto nativas quanto carregadas dinamicamente, prosrc contém o nome da função na linguagem C (símbolo de ligação). Para todos os outros tipos de linguagem conhecidos no momento, prosrc contém o texto do código fonte da função. probin não é utilizado, exceto para as funções C carregadas dinamicamente, para as quais fornece o nome do arquivo de biblioteca compartilhada contendo a função.

SourceForge.net Logo CSS válido!