Re: Aclaratoria de puntos decimales

From: Luis Rodrigo Gallardo Cruz <rodrigo(at)nul-unu(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Aclaratoria de puntos decimales
Date: 2006-02-21 17:56:59
Message-ID: 20060221175659.GB3225@mail.interservice.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Mon, Feb 20, 2006 at 05:49:45PM -0400, Zuleima Lara wrote:
> Hola, logre configurar lo de los separadores.
> En postgresql.conf en la seccion # CLIENT CONNECTION DEFAULTS se encuentra (lc_numeric = 'c' # locale for number formatting)
> Yo anteriormente tenia en la configuracion esa variable igualada a una 'C' en mayusculas, y modificandola a minusculas me entrega lo que necesito; es decir, como separador de miles un punto y de decimales una coma.

Eso no debería funcionar.

lc_numeric = 'C' significa que la base de datos va a usar el formato
normal del lenguaje 'C', es decir el formato normal del inglés de E.U.
Lo cual explica el punto decimal y la coma para miles.

Ponerle lc_numeric = 'c' significa que va a usar un hipotético formato
llamado 'c'. Ese formato no existe, los formatos tienen por nombre algo
así como 'idioma_pais'.

Me imagino que lo que pasa es que pg, al leer la configuración y
encontrar un locale inválido se regresa a usar el default *de tu
sistema* Y ocurre que tu sistema *ahorita* tiene por default un locale
con comas decimales.

Confiar el comportamiento de tu aplicación a lo que pg hace
cuando le das un valor de configuración inválido es una idea por lo
menos mala. Mejor configura esa variable al valor que corresponde a tu
pais:

Busca en
http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html
el código de tu pais. Voy a suponer para el ejemplo que es Perú.
Entonces el código es PE.

Ponle a la configuración
lc_numeric = 'es_PE'
y ya que estas en esas, pon también a ese valor lc_monetary lc_time y
lc_messages.

Y luego vete a una lista de tu sistema operativo y preguntales como
hacer para asegurar que tu sistema tiene la definición de locale de tu
pais.

--
Rodrigo Gallardo PGP Key ID: ADC9BC28
Fingerprint: 7C81 E60C 442E 8FBC D975 2F49 0199 8318 ADC9 BC28
http://www.nul-unu.com http://www.nul-unu.com/blogs/elucubrando

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Espartano 2006-02-21 18:43:44 Re: Re: [pgsql-es-ayuda] Re[2]: [pgsql-es-ayuda] Conexión Postgresql
Previous Message Hernan Arias 2006-02-21 17:34:58 Re: postgresql con SUSE 9.3