Java区分大小写和mysql不区分大小写
在开发的过程中遇到了一个小坑,特此记录。产生问题需求描述: 从第三方获取品牌信息存储到本地数据库中, 获取商品数据时根据品牌名称判断是否已存在,若已存在则同步品牌ID到商品信息中进行存储, 若不存在则先添加商品名称从而获取到品牌ID.数据库中存储第三方名称添加了唯一索引, 因此发现在品牌列表转换map数组中未能通过商品名称key获取到value值时,存储时会出现数据已存在, 不符合唯一索引. 查找问题发现因大小写不同java获取不到value值. 而mysql存储时不区分大小写
不要轻易修改数据库。
解决步骤:
-
在插入品牌名称时全部转换为小写或大写,
//toLowerCase()方法将String转换为小写
//toUpperCase()方法将String转换为大写 -
若想在数据库层面进行处理可直接在字段中设置SET utf8 COLLATE utf8_bin区分大小写
本文探讨了Java区分大小写与MySQL不区分大小写的特性,导致从第三方获取的品牌信息在本地数据库中出现唯一索引冲突的问题。文章提供了解决方案,即在插入品牌名称时统一转换为小写或大写。
800

被折叠的 条评论
为什么被折叠?



