Error Code: 1273 - Unknown collation: 'utf8mb4_0900_ai_ci'
时间: 2023-11-23 08:39:51 浏览: 275
这个错误通常是因为MySQL版本不兼容导致的。在MySQL 8.0.1之后,utf8mb4字符集的默认排序规则被更改为utf8mb4_0900_ai_ci。而在早期版本中,utf8mb4字符集的默认排序规则是utf8mb4_general_ci。
如果你的MySQL版本低于8.0.1,但在数据库中使用了utf8mb4_0900_ai_ci排序规则,那么就会遇到这个错误。
解决方法有两种:
1. 升级MySQL版本至8.0.1或以上。这样就可以使用utf8mb4_0900_ai_ci排序规则了。
2. 将数据库中使用的排序规则改为utf8mb4_general_ci。可以通过以下命令修改表的排序规则:
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
需要注意的是,修改排序规则可能会影响到现有数据的查询和排序,所以需要谨慎操作。
相关问题
1273 - Unknown collation: 'utf8mb4_0900_ai_ci'
这个错误通常是由于数据库版本不支持 utf8mb4_0900_ai_ci 导致的。这个问题可以通过以下几个步骤来解决:
1. 确认你的 MySQL 版本是否支持 utf8mb4_0900_ai_ci 。
2. 如果你的版本不支持 utf8mb4_0900_ai_ci ,则可以尝试使用 utf8mb4_unicode_ci 代替。
3. 如果你的版本支持 utf8mb4_0900_ai_ci ,则可能是因为你的数据库或表格的字符集没有设置为 utf8mb4 。
4. 你可以在创建数据库或表格时指定字符集为 utf8mb4 ,例如:
```
CREATE DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
```
或者
```
CREATE TABLE mytable (mycolumn VARCHAR(255)) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
```
5. 如果你已经创建了数据库或表格,你可以通过以下命令更改字符集:
```
ALTER DATABASE mydatabase CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
```
或者
```
ALTER TABLE mytable CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;
```
希望这些步骤可以帮助你解决这个问题。
解释1273 - Unknown collation: 'utf8mb4_0900_ai_ci
这个错误提示通常出现在 MySQL 数据库中,是因为在创建表的时候指定了不支持的字符集和排序规则。在MySQL 5.7.7之前,只支持 utf8 字符集,而在 MySQL 5.7.7之后,官方推荐使用 utf8mb4 字符集来支持更多的 Unicode 字符,同时还引入了新的排序规则 utf8mb4_0900_ai_ci。如果你的 MySQL 版本较旧,不支持 utf8mb4_0900_ai_ci 排序规则,就会出现该错误。
解决方法是将表的字符集和排序规则设置为支持的类型,可以使用以下命令:
```
ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
```
其中,utf8mb4_unicode_ci 是一种常用的排序规则,可以根据需要选择其他排序规则。
阅读全文