背景
我的主页还有如果运行sql文件的详细教程:
如何运行sql文件
如果你在运行sql文件时遇到了这个问题:
[SQL] Query zhxy_db start
[ERR] 1253 - COLLATION 'utf8_general_ci' is not valid for CHARACTER SET 'utf8mb4'
[ERR]
SET NAMES utf8;
SET FOREIGN_KEY_CHECKS = 0;
1253错误,便说明是字符校对的问题
解决办法
首先我们要明确:不同的mysql版本对应的字符集是不一样的:
字符集 | msyql 5.x | mysql 8.0 |
---|---|---|
CHARACTER SET | utf8 | utf8mb4 |
COLLATE | utf8_general_ci | utf8mb4_0900_ai_ci |
可以在本地cmd中输入
mysql --version
查看
每个建表语句都会规定字符集规则,例如:
那么解决的办法很简单:把字符集替换为对应的数据库版本的即可
-
例如我的mysql版本是5.7,我可以ctrl + f搜索,将所有的utf8mb4替换为utf8
-
再将所有的utf8mb4_0900_ai_ci替换为utf8_general_ci即可