Stored Procedures and Functions in PostgreSQL – Getting Started

A stored procedure and user-defined function (UDF) é um conjunto de instruções SQL e de procedimentos (declarações, atribuições, loops, fluxo de controle, etc.) que são armazenadas no servidor de banco de dados e podem ser invocadas usando a interface SQL.

Quick Example:

No PostgreSQL, tanto os procedimentos armazenados como as funções definidas pelo usuário são criadas com a instrução CREATE FUNCTION. Existem diferenças entre a noção de procedimentos e funções armazenadas em sistemas de banco de dados:

Procedimento Armazenado Função
Usar em uma expressão
Devolver um valor
Devolver valores como OUT parâmetros
Devolver um único conjunto de resultados (como um função de tabela)
Retorna conjuntos de resultados múltiplos

Então, na maioria dos casos, o propósito de um procedimento armazenado é:

  • Realizar acções sem devolver qualquer resultado (INSERIR, ACTUALIZAR operações i.e.)
  • Devolver um ou mais valores escalares como parâmetros OUT
  • Devolver um ou mais conjuntos de resultados

Usualmente o propósito de uma função definida pelo usuário é processar os parâmetros de entrada e retornar um novo valor.

Ferramentas de relatório

Muitas ferramentas de relatório (Crystal Reports, Reporting Services, ferramentas BI, etc.) permitem especificar uma consulta (instrução SQL SELECT) ou um procedimento armazenado retornando um conjunto de resultados para definir um conjunto de dados para um relatório.

Procedimentos armazenados são muito úteis quando você precisa realizar cálculos complexos antes que os dados estejam disponíveis para um relatório.

Deixe uma resposta

O seu endereço de email não será publicado.