Convertir de latin1 a utf8 en una base de datos MySQL

En esta entrada, vamos a ver como convertir los datos que tengamos en una base de datos MySQL de latin1 a utf-8.

Imaginémonos que hemos de crear un nuevo proyecto, porque el que teníamos antiguamente ha quedado obsoleto.

Pues nosotros como buenos programadores que somos, lo vamos a hacer de nuevo, sin aprovechar nada de lo viejo, ya que solo sería arrastrar la mierda hacía otro lado.

Y lo que queremos es darle un cambio completo y no un simple lavado de cara.

Pues bueno, vamos haciendo nuestra nueva web, aplicación, o con lo que estemos liados en ese momento, y vemos que hay datos en la base de datos antigua que nos hacen falta.

Pero claro… como es lógico, en la base de datos antigua, está todo guardado en latin1. ¡OUCH!

Así que si importamos esos datos, se nos van a introducir incorrectamente ya que los acentos y caracteres especiales no van a estar bien puestos y a la hora de mostrar la información no nos va a ser posible verla correctamente.

Y como no queremos seguir con las chapuzas que han hecho nuestros antecesores y tratar esos datos de forma diferente.

Vamos a convertir esos datos grabados en latin1 a utf-8 con la siguiente sentencia SQL:

Como veis con eso ya habríamos realizado el cambio en nuestra tabla, y al comprobar el resultado final, veríamos que los acentos y caracteres extraños, están todos correctamente.

En este caso se aplica solo a un campo, así que si queremos hacerlo para todos los campos, deberíamos irlos añadiendo, al menos que yo sepa no hay otra forma.

Espero que os haya servido de ayuda y podáis eliminar todo ese código antiguo escrito en latin1 que no sirve para nada.

Y recordad! No olvidéis comentar! Vuestro código y en el Blog 😉

Comparte si te ha gustado:
Share on Facebook
Facebook
0Share on Google+
Google+
0Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Tumblr
Tumblr
0Digg this
Digg

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*
*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.