Conversión de LATIN1 a UTF8

From: rosorio(at)servidor(dot)unam(dot)mx
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Conversión de LATIN1 a UTF8
Date: 2007-11-26 09:42:36
Message-ID: 1196070156.474a950c9573e@www.correo.unam.mx
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola a todos, después de mucho rato de no dar con la solución (googlear, buscar
en la lista, etc.) he decidido recurrir a su ayuda.

Estoy tratando de llevar un cluster generado en LATIN1 hacia uno que sea
generado en UTF8, todo esto en una distribución Centos con postgres 8.1.9

Para el archivo i18n tengo

LANG="es_MX.UTF-8"
SUPPORTED="es_MX.UTF-8:es_MX:es:es_ES.UTF-8:es_ES:es"
SYSFONT="latarcyrheb-sun16"

con locale me arroja

LANG=es_MX.UTF-8
LC_CTYPE="es_MX.UTF-8"
LC_NUMERIC="es_MX.UTF-8"
LC_TIME="es_MX.UTF-8"

Pero al crear el cluster las cosas ya no operan del todo bien ya que comienza a
desplegar caracteres erroneos.

initdb -E UTF8 --locale=es_MX.UTF-8 -D ./data
Los archivos de este cluster serán de propiedad del usuario «postgres».
Este usuario también debe ser quien ejecute el proceso servidor.
El cluster será inicializado con configuración local es_MX.UTF-8.

Ahora bien, si reviso cómo quedó la instalación obtengo:

template1=# \l
Listado de base de datos
Nombre | Dueño | Codificación
-----------+----------+---------------
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8

Sin embargo con \set veo que ENCODING = 'LATIN1' (ver más adelante)

template1=# \set
VERSION = 'PostgreSQL 8.1.9 on x86_64-redhat-linux-gnu, compiled by GCC gcc
(GCC) 4.1.1 20070105 (Red Hat 4.1.1-52)'
AUTOCOMMIT = 'on'
VERBOSITY = 'default'
PROMPT1 = '%/%R%# '
PROMPT2 = '%/%R%# '
PROMPT3 = '>> '
DBNAME = 'template1'
USER = 'postgres'
PORT = '5432'
ENCODING = 'LATIN1'

Por lo que al hacer el vaciado de mi respaldo de LATIN1 ha esta nueva
instalación tengo que, para ver correctamente los registros, poner en la consola
de psql \encoding latin1 ya que con UTF8 me despliega de manera erronea los
caractéres ñ y acentos. (al dump que hice le cambio únicamente la codíficación
de creación de la base a UTF8, los SET CLIENT ENCODING permanecen en LATIN1)

Alguna observación al proceso?. Agradezco de antemano cualquier observación y
perdón por la extensión del mensaje

Saludos

Roberto Osorio

-------------------------------------------------
www.correo.unam.mx
UNAMonos Comunicándonos

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message pablo 2007-11-26 13:58:28 Ayuda con update
Previous Message jlcambero 2007-11-26 09:27:12 Re: Ayuda con llamada a funcion