Mysql导入sql文件报COLLATION ‘utf8_general_ci‘ is not valid for CHARACTER SET ‘utf8mb4‘原因

文章讲述了当MySQL版本过旧,不支持utf8mb4字符集时,会出现错误。utf8mb4支持更多字符,包括表情符号。解决方案是升级MySQL至支持utf8mb4的版本,或使用utf8字符集创建数据表。示例代码展示了如何使用utf8和utf8_general_ci创建表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个错误通常是因为MySQL数据库版本较旧,不支持使用utf8mb4字符集,而使用了utf8mb4字符集的COLLATION排序规则。utf8mb4字符集支持存储更多的字符,包括一些表情符号等,而utf8字符集则不支持。如果MySQL版本不支持utf8mb4字符集,就会出现以上错误。 解决这个问题的方法是升级MySQL到支持utf8mb4字符集的版本,或者使用MySQL支持的字符集和排序规则来创建数据表。例如,可以使用utf8字符集和utf8_general_ci排序规则来创建数据表:

CREATE TABLE table_name (
    id INT(11) NOT NULL AUTO_INCREMENT,
    column_name VARCHAR(255) NOT NULL,
    create_time DATETIME NOT NULL,
    PRIMARY KEY (id),
    UNIQUE KEY unique_column_name (column_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;

这样就可以避免出现以上错误。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会理财的程序员不是好摄影师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值