/ 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
Comments
 Subscribe to comments
                    Subscribe to comments
                
                