Mybatis或Mybatis-plus操作MYSQL数据库设置大小写不敏感
·
使用场景
在Oracle数据库中,我们常常将数据表字段写为大写;有一天我们做数据库迁移,将Oracle数据库改为Mysql数据库时往往直接使用原来的字段名(大写字段)并将Oracle中的特殊关键字转为Mysql关键字就可以了,这个时候就会出现一个问题,实体类与数据库列名无法匹配。
方法1:使用@TableField("列名")将字段与列名对应起来
package com.test.Model; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; @TableName("test_entity") public class TestEntity { @TableField("USER_ID") private String userId; @TableField("CODE_ID") private String codeId; public String getUserId() { return userId; } public void setUserId(String userId) { this.userId = userId; } public String getCodeId() { return codeId; } public void setCodeId(String codeId) { this.codeId = codeId; } }
方法2:在MYSQL创建数据表或数据库的时候设置字段类型
1.utf8_bin 将字符串中的每一个字符用二进制数据存储,区分大小写。
2.utf8_genera_ci 不区分大小写,ci全称case insensitive的缩写,大小写不敏感。
3.utf8_general_cs 区分大小写,cs全称case sensitive的缩写,大小写敏感。
方法3:在安装MYSQL数据库的时候,在配置文件[mysqld]项中添加内lower_case_table_names=1
[mysqld]
# 指定mysql不区分大小写
lower_case_table_names=1
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)