注意项:
1)自行调整 TABLE_SCHEMA = ‘datatables’
2)避免再次出现这种问题,建库的时候,设置好数据库编码和排序规则编码,创建表的时候,检查建表语句,确保语句中的编码跟数据库编码一致。
- SELECT
- CONCAT(
- 'ALTER TABLE ',
- table_name,
- ' MODIFY ',
- column_name,
- ' ',
- DATA_TYPE,
- '(',
- CHARACTER_MAXIMUM_LENGTH,
- ') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci',
- ( CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END ),
- ';'
- )
- FROM
- information_schema.COLUMNS
- WHERE
- TABLE_SCHEMA = 'datatables'
- AND COLLATION_NAME != 'utf8mb4_general_ci'
- AND COLLATION_name IS NOT NULL
-
需要转换排序规则编码的字段:
说明:按自己的情况调整 CHARACTER 和COLLATE 的值。
生成的语句复制出来执行就ok了。