/ Published in: MySQL
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
/* ¡IMPORTANTE! * Este es un tutorial para convertir la codificación de bases de datos de * latin1 a utf8. MySQL anteriormente solo utilizaba codificación latin1, y una * colación latin1_swedish_ci. */ /* Algoritmo: * Al convertir los campos a su valor en binario, se puede cambiar la * codificación, sin tener que preocuparse por los caracteres especiales: * CHAR -> BINARY * VARCHAR -> VARBINARY * TINYTEXT -> TINYBLOB * TEXT -> BLOB * MEDIUMTEXT -> MEDIUMBLOB * LONGTEXT -> LONGBLOB * Los siguientes queries nos ayudan en convertir a y regresar de binario. */ /* MyDb * Se infiere que la base de datos se llama MyDb. */ /* Correr en information_schema * El código SQL de estos queries se debe correr en la base de datos llamada * information_schema. Los queries generan código SQL que se debe correr en la * base de datos 'MyDb'. */ USE information_schema; /* I. Identificar binarios preexistentes * Este SQL -- asà como el siguiente paso -- es un paso de precaución; hay que * anotar los campos que aparezcan aquÃ, para identificar cuáles campos ya eran * de tipo binario. Si no aparecen campos, es motivo de alegrÃa. */ /* II. Identificar blobs preexistentes * Este SQL también es un paso de precaución; hay que anotar los campos que * aparezcan aquÃ. Aquà buscamos los campos de tipo blob. Si no aparecen * campos, es motivo de alegrÃa. */ /* III. CHAR -> BINARY * Conversión de cualquier tipo de Char a su correspondiente Binario. */ /* IV. TEXT -> BLOB * Conversión de cualquier tipo de Texto a su correspondiente Blob. */ /* V. Convertir MyDb de latin1 a utf8 * Esto convierte y asigna una colación en Unicode a la base de datos. Pero aún * falta considerar las tablas y los campos en particular. */ /* VI. Convertir Tablas de MyDb de latin1 a utf8 * Este query es para cambiar la codificación de las tablas. */ /* VII. Convertir Campos de tipo Char de las Tablas de MyDb de latin1 a utf8 * Este query es para cambiar la codificación los chars de las tablas. */ /* VIII. Convertir Campos de tipo Text de las Tablas de MyDb de latin1 a utf8 * Este query es para cambiar la codificación los textos de las tablas. */ /* IX. BINARY -> CHAR * Convierte los binarios a chars. Hay que manualmente eliminar queries de los * resultados de el paso I. */ /* X. BLOB -> TEXT * Revierte los blobs a textos. Hay que manualmente eliminar queries de los * resultados de el paso II. */
URL: http://rolandog.com