您当前的位置:首页 > 计算机 > 软件应用 > 数据库 > MySQL

MySQL批量更改数据库中的表字段的排序规则

时间:03-10来源:作者:点击数:

注意项:

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了。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门