Hola Diego, te aseguraste que ese app_user es una variable de configuración? pues es el error que retorna!!!

puede que se llame prueba.app_user

asegúrate de tenerlo en el postgresql.conf por favor


Saludos

On 18/08/17 11:54, Diego Ayala wrote:
buenos dias, estoy teniendo un incoveniente para utilizar el SET LOCAL, estuve haciendo algunas pruebas iniciales con SET SESSION, que funcionan sin problemas:

set session "prueba.user" = 'admin';
SELECT current_setting('prueba.user');

retornando el resultado "admin"

pero, al usar SET LOCAL

set  local "app_user" = 'admin';

obtengo este resultado

WARNING:  SET LOCAL can only be used in transaction blocks


ERROR:  unrecognized configuration parameter "app_user"

********** Error **********

Ya lei la documentacion, que habla de usar solo en bloque de transaccion, pero tampoco me funciona, tengo instalado PostgreSQL 9.4.10 64bits. sobre RHE.

Incluso cree una funcion para tratar de meterlo dentro de 1 transaccion.


Create or Replace function  user_app()
Returns text AS
$BODY$
Declare
valor text;
Begin
set  local "app_user" = 'admin';
SELECT current_setting('app.user') INTO valor;
return valor;

END;
$BODY$
 Language plpgsql;


mismo error

ERROR:  unrecognized configuration parameter "app_user"
CONTEXT:  SQL statement "set  local "app_user" = 'dreese'"
PL/pgSQL function user_app() line 5 at SQL statement
********** Error **********


Si alguien me puede ayudar a entender como usar el LOCAL.

Gracias de ante mano.








Reply via email to