From: | Francisco Olarte <folarte(at)peoplecall(dot)com> |
---|---|
To: | Micky Khan <mcanchas(at)hotmail(dot)com> |
Cc: | FORO POSTGRES <pgsql-es-ayuda(at)postgresql(dot)org>, "pgsql-es-ayuda(at)lists(dot)postgresql(dot)org" <pgsql-es-ayuda(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Como evitar los caracteres raros cuando hago backup o importacion |
Date: | 2018-10-23 17:11:41 |
Message-ID: | CA+bJJbxJfwGS2nVroV1DGwAN=KnXDGezg4E==6K5=JqP=8NAHA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Micky:
2018-10-23 16:09 GMT+02:00 Micky Khan <mcanchas(at)hotmail(dot)com>:
> Cuando hago una importacion de datos cual es la mejor manera de hacerlo ?
> Me salen algunos caracteres raros como : Ã?Â?O
Primero, desde que formato importas ? Si es un archivo de texto, mira
que juego de caracteres tiene ( en unix y similares "file" te lo suele
decir). Eso tiene pinta de utf-8, una forma de verlo es pasarlo por un
conversor de utf-8 a lo que sea, si no da errores de codificacion de
utf-8 tienes una gran probabilidad de que sea utf o ascii, y con
caracteres de 8 bits no puede ser ascii.
Y, segun que SO uses, no te fies de lo que sale por pantalla, mira los
codigos raros con un editor binario.
> Una vez que ya lo pase y cuando hago el backup y quiero restaurarlo me sale
> que el campo es pequeño para algunas tablas
Eso puede ser porque haces el backup en utf-8 y lo restauras en
latin-1 o algo asi. Me explico, cualquier secuencia de bytes es un
latin-1 valido. Si tienes una base de datos con, p.e., "año", y la
vuelcas en utf-8 eso se vuelca como 4 bytes, si luego lo cargas en
latin-1 se importara como "a**o", y si tu columna es de 3 no cabe.
> Mi BD la tengo en Latin1
Es importante que sea el que sea el juego de caracteres de la BD
pongas el del cliente ( creo que era con set client encoding ) al que
vayas a usar. Es decir, si tu BD es latin-1, conectas, pones el
client-encoding en utf-8 y le mandas utf-8 el server lo convertira.
OJO que igual no puede, si tus datos son utf no hay, p.e., caracteres
japoneses en el latin-1.
Ten cuidado si tus datos estan en utf-8 y tu BD esta en latin-1, no
todo se puede convertir. Yo hay te recomendaria convertir el archivo
primero con un recode o similar ( que te permite decirle como
convertir los caracteres que no existen en el charset de destino ), de
forma que tengas buen control de lo que hay, y asi te conectas en
latin-1 y sabes que es pass-through.
Francisco Olarte.
From | Date | Subject | |
---|---|---|---|
Next Message | Francisco Olarte | 2018-10-23 17:15:34 | Re: Como evitar los caracteres raros cuando hago backup o importacion |
Previous Message | Stephen Amell | 2018-10-23 14:19:37 | Re: Como evitar los caracteres raros cuando hago backup o importacion |