Procedimientos almacenados y funciones en PostgreSQL – Primeros pasos

Un procedimiento almacenado y una función definida por el usuario (UDF) es un conjunto de sentencias SQL y de procedimiento (declaraciones, asignaciones, bucles, flujo de control, etc.) que se almacenan en el servidor de la base de datos y pueden ser invocados utilizando la interfaz SQL.

Ejemplo rápido:

En PostgreSQL, tanto los procedimientos almacenados como las funciones definidas por el usuario se crean con la sentencia CREATE FUNCTION. Existen diferencias entre la noción de procedimientos almacenados y funciones en los sistemas de bases de datos:

Procedimiento almacenado Función
Uso en una expresión
Devolver un valor
Devolver valores como OUT parámetros
Devolver un único conjunto de resultados (como una función de tabla)
Devuelve múltiples conjuntos de resultados

Así que en la mayoría de los casos, el propósito de un procedimiento almacenado es:

  • Realizar acciones sin devolver ningún resultado (operaciones INSERT, UPDATE i.e.)
  • Devolver uno o más valores escalares como parámetros de SALIDA
  • Devolver uno o más conjuntos de resultados

Usualmente el propósito de una función definida por el usuario es procesar los parámetros de entrada y devolver un nuevo valor.

Herramientas de elaboración de informes

Muchas herramientas de elaboración de informes (Crystal Reports, Reporting Services, herramientas de BI, etc.) permiten especificar una consulta (sentencia SQL SELECT) o un procedimiento almacenado que devuelve un conjunto de resultados para definir un conjunto de datos para un informe.

Los procedimientos almacenados son muy útiles cuando se necesita realizar cálculos complejos antes de que los datos estén disponibles para un informe.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.