>데이터 베이스 >MySQL 튜토리얼 >MySQL默认校验规则不区分大小写_MySQL

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-01 13:28:431099검색

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
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.