Mybatis或Mybatis-plus操作MYSQL数据库设置大小写不敏感
使用场景在Oracle数据库中,我们常常将数据表字段写为大写;有一天我们做数据库迁移,将Oracle数据库改为Mysql数据库时往往直接使用原来的字段名(大写字段)并将Oracle中的特殊关键字转为Mysql关键字就可以了,这个时候就会出现一个问题,实体类与数据库列名无法匹配。方法1:使用@TableField("列名")将字段与列名对应起来package com.test.Model;impor
·
使用场景
在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
更多推荐
已为社区贡献1条内容
所有评论(0)