En PL/SQL de Oracle puedo crear una variable global basada en sesión con la definición del paquete. Con PLpg/SQL de Postgresql, no parece posible ya que no hay paquetes, solo procedimientos y funciones independientes.¿Variable global basada en sesión en el procedimiento almacenado Postgresql?
Aquí se muestra la sintaxis de PL/SQL para declarar g_spool_key como un mundial ...
CREATE OR REPLACE PACKAGE tox IS
g_spool_key spool.key%TYPE := NULL;
TYPE t_spool IS REF CURSOR RETURN spool%ROWTYPE;
PROCEDURE begin_spool;
PROCEDURE into_spool
(
in_txt IN spool.txt%TYPE
);
PROCEDURE reset_spool;
FUNCTION end_spool
RETURN t_spool;
FUNCTION timestamp
RETURN VARCHAR2;
END tox;
¿Cómo voy a poner en práctica una sesión variable global basada en PLPG/SQL?
Son estos hechos a la variable-clases mutable? – dacracot
sí, tengo una clase "imos" - psql salida: imos => establece imos.testvar a 'foobar'; SET imos => mostrar imos.testvar; imos.testvar -------------- foobar imos => establece imos.testvar a 'bazbar'; SET imos => mostrar imos.testvar; imos.testvar -------------- bazbar –
BTW, de PostgreSQL 9.2 cualquier configuración puede tener el prefijo de cualquier nombre de clase y se eliminó el soporte del parámetro custom_variable_classes. (Ver https: // www.postgresql.org/docs/current/static/release-9-2.html#AEN111020) – Nashev