From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Emanuel Calvo Franco <postgres(dot)arg(at)gmail(dot)com> |
Cc: | Vida Luz Arista <vida(dot)arista(at)ideay(dot)net(dot)ni>, Cesar Erices <caerices(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] acentos y ñ |
Date: | 2009-06-16 19:21:29 |
Message-ID: | 20090616192129.GF7519@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Emanuel Calvo Franco escribió:
> iconv -f ASCII -t UTF-8 archivo_del_dump > nuevo_archivo
Ojo con este paso. No puedes hacer "-f ASCII", porque los datos no
están en ASCII propiamente tal. Es probable que los datos estén en
Latin1 o bien en UTF8, o peor aún, que algunos datos estén en una y
otros en otra. (ASCII es una codificación de 7 bits; no hay acentos ni
ñ en ASCII. La codificación SQL_ASCII no es realmente ASCII, sino que
es una declaración del usuario que significa "me importa una mierda en
qué codificación están los datos, sólo guárdalos y deja de joder").
Si todos los datos son UTF8, no hay que hacer ninguna conversión. Basta
con hacer un dump, crear la nueva base de datos con UTF8, y hacer el
restore.
Si los datos son latin1 (o latin9 que es prácticamente lo mismo) tampoco
es necesario hacer la conversión: puedes dejar que Postgres la haga.
Sólo debes asegurarte de que el restore se haga así:
PGOPTIONS="-c client_encoding=latin1" pg_restore ... -f archivo_del_dump
O bien (si el dump es de texto)
PGOPTIONS="-c client_encoding=latin1" psql ... -f archivo_del_dump
Si es el tercer caso (mezcla de codificaciones), lo que hay que hacer es
arreglar los datos manualmente para que queden todos los datos en una de
las dos, y luego usar uno de los procedimientos de arriba.
Nota que si eso de "arreglar manualmente" puede ser más sencillo de lo
que suena (¡¡no es necesario editar el archivo manualmente para arreglar
los acentos!!), pero lo más importante es que entiendas lo que está
sucediendo.
--
Alvaro Herrera http://planet.postgresql.org/
Major Fambrough: You wish to see the frontier?
John Dunbar: Yes sir, before it's gone.
From | Date | Subject | |
---|---|---|---|
Next Message | Emanuel Calvo Franco | 2009-06-16 19:36:45 | Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] acentos y ñ |
Previous Message | Emanuel Calvo Franco | 2009-06-16 19:10:51 | Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] acentos y ñ |