He cometido un error al diseñar mi base de datos de aplicaciones hace varios años y la configuración de intercalación de mis tablas y campos de tablas está mezclada. Algunos de ellos son utf8_general_ci y algunos de ellos son utf8_unicode_ci.Convertir tablas y campos utf8_general_ci en utf8_unicode_ci
Esto causa problemas al unir tablas con intercalaciones diferentes. Ahora, estoy planeando cambiar la configuración de intercalación y hacer que sean iguales: utf8_unicode_ci. Voy a ejecutar estas dos consultas SQL en todas mis tablas.
ALTER TABLE `table1` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE `table1` CHANGE `Action` `Action` VARCHAR(250) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL;
Mi pregunta es, ¿ejecutando estas dos consultas SQL se rompen todos los valores de campo, especialmente los que contienen caracteres acentuados? ¿O es seguro ejecutar estas dos consultas?
Esperamos su respuesta.
Gracias por sus respuestas!
Gracias por su amable respuesta. – TamTam
Estas dos codificaciones de caracteres son compatibles, sin embargo. De hecho, es exactamente la misma codificación de caracteres, solo una forma diferente de compararlos al ordenar. Cualquier índice en las columnas probablemente necesite ser reconstruido, eso es todo. – thomasrutter