如何批量修改mysql表的字符集 mysql添加数据报错1366 字符集默认为latin1

不知道为啥我用django数据迁移之后表里的字段默认是Latin类型的 所以在添加数据的时候不能添加中文的数据

虽然不知道为啥字符集会这样 以下提供两个修改字符集的方法

方法一 用navicat手动去改 :

如果表少的话可以用

 

方法二 批量修改:

更改表编码(字符集)和表中所有字段的编码(字符集):

SELECT TABLE_NAME  from information_schema.`TABLES` WHERE TABLE_SCHEMA = '数据库的name';

如果一个数据库有很多表要修改,可以使用如下办法:

查询某个数据库所有表名的语句:

SELECT
	CONCAT(
		'ALTER TABLE ',
		TABLE_NAME,
		' CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;'
	)
FROM
	information_schema.`TABLES`
WHERE
	TABLE_SCHEMA = '数据库name';

猜你喜欢

转载自blog.csdn.net/Z_Gleng/article/details/124893767