2009/11/2 mvleal <[email protected]>:
> Como faço para utilizar a vírgula como separador decimal nos campos
> definidos como "numeric(15,2)" por exemplo.
Voce não faz, não pode.
> Já tentei de tudo com o "LC_NUMERIC", mas quando vou inserir o valor 1,23 dá
> erro. Tenho que substituir a vírgula por ponto e transformar o número em
> 1.23;
AFAIK o parâmetro de configuração LC_NUMERIC apenas controla funções
de formatação [1]
# \pset tuples_only
# \pset border 0
# \x
# SHOW LC_NUMERIC;
lc_numeric en_US.utf-8
SELECT TO_CHAR('1.99'::numeric,'99D99') AS "Meu valor numerico em en_US:";
Meu valor numerico em en_US: 1.99
^^
Repare o ponto.
# SHOW LC_NUMERIC;
lc_numeric pt_BR.utf-8
SELECT TO_CHAR('1.99'::numeric,'99D99') AS "Meu valor numerico em pt_BR:";
Meu valor numerico em pt_BR: 1,99
^^
Repare a virgula.
No console do psql voce também poderia utilizar a variável
numericlocale para alternar entre formatos de saída baseado no sistema
e no locale:
postgres=# \pset numericlocale
Formato numérico baseado no idioma está desabilitado.
postgres=# SELECT '1.99'::NUMERIC;
numeric 1.99
postgres=# \pset numericlocale
Exibindo formato numérico baseado na configuração regional.
postgres=# SELECT '1.99'::NUMERIC;
numeric 1,99
1) http://www.postgresql.org/docs/8.4/interactive/functions-formatting.html
Abraço!
-Leo
--
Leonardo Cezar
http://www.aslid.org.br
http://postgreslogia.wordpress.com
http://www.dextra.com.br/postgres
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral