欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

MySQL默认校验规则不区分大小写_MySQL

程序员文章站 2022-05-04 22:57:37
...
bitsCN.com

MySQL默认校验规则不区分大小写

背景:

系统中通过判断name是否存在决定是插入还是更新,由于是关键属性,name上加了唯一性约束。然而在一次数据同步时,总是报唯一性约束,保存失败。

检查:

经核实,是该name由aaa变成了aAa,由于大小写不同,系统认为是一个新对象,做了save操作,但是数据库唯一性校验时认为已经存在,保存失败。

在MySQL中,对于Column Collate其约定的命名方法如下:

*_bin: binary case sensitive collation,也就是说是区分大小写的

*_cs: case sensitive collation,区分大小写

*_ci: case insensitive collation,不区分大小写

解决:

修改数据库的默认校验规则为utf8_bin

bitsCN.com
相关标签: 区分大小写