关于MySQL主键不区分大小写,或则其他查询不区分大小写 Duplicate entry 'AOVbrXXF' for key 'PRIMARY'

 

 

今天在测试中发现主键重复问题,查询了下SQL,发现MySQL不区分大小写,在查询和插入中。

 

 

 

可以看到时没有区分大小写查询的。

MySQL默认是对大小不区分
如果你需要MySQL区分大小写需要设置数据库表的排序规则,或则设置单个字段的排序规则:

utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写。
utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感。
utf8_general_cs区分大小写,cs为case sensitive的缩写,即大小写敏感。
 

在使用过程中,用到的是utf8_genera_ci没有区分大小写

 

 


导致这个ID在插入的时候出现了报错

所以将utf8_general_ci排序规则改为utf8_bin区分大小写就可以

 

 

posted @ 2020-04-19 15:21  摘星族  阅读(209)  评论(0编辑  收藏