我有那个错误“#1273 - 未知排序规则:'utf8mb4_0900_ai_ci'”

I have that error"#1273 - Unknown collation: 'utf8mb4_0900_ai_ci'"

CREATE TABLE `payment_methods` (
  `payment_method_id` tinyint(4) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  PRIMARY KEY (`payment_method_id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
CREATE TABLE payment_methods 
    ( payment_method_id tinyint(4) NOT NULL AUTO_INCREMENT, 
      name varchar(50) NOT NULL, 
      PRIMARY KEY (payment_method_id) 
    ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

注意:COLLATE=utf8mb4_0900_ai_ci 替换为 COLLATE=utf8mb4_general_ci

参考:https://www.freakyjolly.com/resolved-when-i-faced-1273-unknown-collation-utf8mb4_0900_ai_ci-error/#.X2jHBGgzZPY

utf8mb4_0900_ai_ci 是 MySQL 8.0

中新增的排序规则

它在 MySQL 的早期版本中无法识别,例如 5.7。

它也可能无法在 MySQL 的分支中识别,例如 MariaDB。

您应该只在 MySQL 8.0 中使用该排序规则。

查阅您正在使用的软件版本的文档以查看支持的归类集。

例如:https://dev.mysql.com/doc/refman/5.7/en/charset-charsets.html

或查询INFORMATION_SCHEMA.COLLATIONS以查找列表。