engine = innodb character set = utf8mb4 collation = utf8mb4_unicode_ci
时间: 2024-05-21 13:18:37 浏览: 67
这是MySQL数据库中创建表时的一些参数设置。engine = innodb表示使用InnoDB存储引擎,它是一种支持事务和行级锁定的MySQL存储引擎。character set = utf8mb4表示使用UTF-8编码来存储数据,utf8mb4是MySQL支持的一种字符编码,它可以存储更多的Unicode字符。collation = utf8mb4_unicode_ci表示使用utf8mb4字符集的Unicode排序规则进行排序。这些参数设置可以确保数据的存储和排序方式符合需要,并且能够支持多语言和特殊字符的存储。
相关问题
导入数据库遇到Unknown collation: 'utf8mb4_0900_ai_c
您好!对于遇到 "Unknown collation: 'utf8mb4_0900_ai_c'" 的错误,这通常是由于数据库版本不兼容导致的。在某些旧版本的MySQL中,不支持使用 utf8mb4_0900_ai_c 这个字符集。
解决这个问题的方法是升级您的MySQL数据库版本至5.7.7或更高版本,这些版本开始支持 utf8mb4_0900_ai_ci 字符集。如果您无法升级数据库版本,您可以尝试使用 utf8mb4_unicode_ci 字符集,它是兼容的替代选项。
另外,还要确保您在创建数据库和表时正确指定了字符集和排序规则。例如,在创建数据库时可以使用以下命令:
```
CREATE DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
```
在创建表时可以使用类似的方式指定字符集和排序规则:
```
CREATE TABLE your_table_name (
...
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
```
希望这些信息对您有所帮助!如果您还有其他问题,请随时提问。
[SQL] Query netshop start [ERR] 1273 - Unknown collation: 'utf8mb4_0900_ai_ci' [ERR] 如何修正
这个错误是因为在 MySQL 8.0.4 之后,`utf8mb4_0900_ai_ci` 取代了之前的 `utf8mb4_general_ci` 作为默认的字符集和校对规则。
要修复这个错误,有两种方法:
1. 在创建表的时候指定字符集和校对规则,例如:
```sql
CREATE TABLE netshop (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
```
2. 修改 MySQL 的默认字符集和校对规则,例如:
```sql
ALTER DATABASE databasename CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
```
其中,`databasename` 是你的数据库名称。这个命令会修改整个数据库的字符集和校对规则,所以请谨慎操作,确保你知道自己在做什么。
阅读全文