MySQL conjunto de caracteres base de datos, tablas, columnas de conjunto de caracteres, la prioridad juego de caracteres y modificar el juego de caracteres UTF-8 mesa es si los datos antes de que el impacto de utf8mb4 abrevian

myslq se pueden proporcionar a nivel de base de datos, nivel de tabla, el juego de caracteres de nivel de columna de codificación;

Orden de prioridad: el conjunto de caracteres base de datos <fijó a la tabla <columna de caracteres;

Es decir niveles inconsistentes de los tres conjuntos de caracteres anteriores, para configurar un rango menor de sujetos;

Por ejemplo: un conjunto de caracteres por defecto es la base de datos conjuntos de caracteres UTF8 utf8 caso no ponen la mesa, si la tabla ajusta automáticamente la codificación utf8mb4; entonces el conjunto de codificación de caracteres en la mesa para el utf8MB4;

 

 

Porque habrá palabras raras después de haber sido dado el almacenamiento de plomo, el fracaso de almacenamiento de datos, de modo que decidí mayor parte de los datos de la tabla utf8 cambiado utf8mb4, comenzó a pensar en dos preguntas:

1, cuando una tabla de transcodificación, si la tabla después de una longitud de campo de transferencia excede el ajuste 255 longitud máxima, tabla de conversión de código no tiene éxito, los datos tendrá éxito o anormal; 2, conversión de código, la longitud de bytes los cambios pueden resultar en la memoria de caracteres normal original 255 ahora no se almacenan adecuadamente la prevención de parte del original se pueden almacenar los datos de campo, ahora longitud almacenada se convierte en corto al almacenamiento;

 

Más tarde, a través de la prueba para obtener la respuesta - ningún efecto;

El primer punto. versión de MySQL 5.0 o superior, ya que, varchar (255), 255 se refiere a un carácter; máximo 65532 bytes, por lo tanto varchar (255) cambiar el conjunto de caracteres a pesar de que este límite, no más que el número máximo de bytes, que no se verá afectada;

El segundo punto: el juego de caracteres para modificar la tabla, se puede elegir si desea actualizar los datos existentes (ya sea con un nuevo conjunto de caracteres se almacena), o sólo tienen efecto sobre la inserción posterior de los datos (datos sin procesar existente);

Las declaraciones son las siguientes:

1 Antes de modificar el juego de caracteres de la tabla y actualizar los datos existentes, se puede ver tres registros después de modificar el existente afectada; (si necesita conjunto detrás de la colación aumento de colación INTERCALAR    puede)

La tabla ALTER nombre_tabla CONVERT para el juego de caracteres   nuevos juegos de caracteres

2 juego de caracteres cambia a la mesa, pero no antes de actualizar los datos existentes, se puede ver después de modificar el comportamiento afectada 0; (si necesita conjunto detrás de la colación aumento de colación INTERCALAR    puede)

La tabla ALTER TABLE_NAME DEFAULT para el juego de caracteres   nuevos juegos de caracteres

 

Publicados 301 artículos originales · 197 fue elogiado · vistas 270 000 +

Supongo que te gusta

Origin blog.csdn.net/boss_way/article/details/103033018
Recomendado
Clasificación