Bruno Simioni escreveu:
> Apesar do PostgreSQL ajustar as variáveis de dezenas e centesimos a
> partir de postgresql.conf, deveria haver uma outra forma de utilizar
> essas variáveis em pg/plsql, por exemplo, para resolver o problema, ao
> invés de modificar o ambiente, como por exemplo "set lc_numeric ....".
> 
Há.

euler=# \! cat /tmp/teste
CREATE OR REPLACE FUNCTION public.teste()
 RETURNS void
 LANGUAGE plpgsql
AS $function$
declare
i text;
begin
select to_char(123456.789, '999G999G999D99') into i;
raise notice 'i: %', i;
set local lc_numeric to 'en_US';
select to_char(123456.789, '999G999G999D99') into i;
raise notice 'i: %', i;
end;
$function$
uler=# show lc_numeric;
 lc_numeric
-------------
 pt_BR.UTF-8
(1 registro)

euler=# select teste();
NOTA:  i:      123.456,79
NOTA:  i:      123,456.79
 teste
-------

(1 registro)

euler=# show lc_numeric;
 lc_numeric
-------------
 pt_BR.UTF-8
(1 registro)



-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Reply via email to