phpmyadmin SQL:如何为utf8mb4_general_ci创建区分大小写的唯一关键字表?

6xfqseft  于 2022-11-09  发布在  PHP
关注(0)|答案(1)|浏览(228)

我用的是phpMyAdmin和PDO。我的数据库用的是utf8mb4_general_ci。看起来像这样。

CREATE TABLE `my_database`.`example` (
    `id` INT NOT NULL AUTO_INCREMENT,
    `code` VARCHAR(255) NULL DEFAULT NULL,
    PRIMARY KEY (`id`),
    UNIQUE (`code`)
) ENGINE = InnoDB;

我在插入'A'和'a'时遇到错误。我通过将code列的排序规则更改为utf8mb4_bin来修复该错误。
有什么方法可以将utf8mb4_general_ci用于敏感大小写吗?我可以在phpMyAdmin,PDO,或者SQL中设置它吗?

vsikbqxv

vsikbqxv1#

感谢@tkausl和@topsail。
其中utf8mb4_general_ci包含_ci说明,对于大小写不敏感。
https://stackoverflow.com/questions/4558707/case-sensitive-collation-in-mysql开始,我应该使用utf8mb4_bin作为区分大小写的唯一列,我可以使用ORDER BY column COLLATE utf8_general_ci

相关问题