本文主要是介绍MYSQL批量更改数据库表和字段的字符集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、修改所有表中的varchar和char字段以及排序集(dataBaseName修改为库名)
SELECTCONCAT('ALTER TABLE `',TABLE_NAME,'` MODIFY `',COLUMN_NAME,'` ',DATA_TYPE,'(',CHARACTER_MAXIMUM_LENGTH,') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci',(CASEWHEN IS_NULLABLE = 'NO' THEN' NOT NULL'ELSE''END),';')
FROMinformation_schema. COLUMNS
WHERETABLE_SCHEMA = 'dataBaseName'
AND (DATA_TYPE = 'varchar' OR DATA_TYPE = 'char')
注:修改后关于已添加的字符串类型的注释将会消失,需要重新添加
二、修改所有表的编码及排序集(dataBaseName修改为库名)
SELECTCONCAT('ALTER TABLE ',TABLE_NAME,' CONVERT TO CHARACTER SET utf8mb4;')
FROMinformation_schema. TABLES
WHERETABLE_SCHEMA = 'dataBaseName';
参考:MYSQL批量更改数据库表和字段的字符集_new_j0的博客-CSDN博客
这篇关于MYSQL批量更改数据库表和字段的字符集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!