解决mybatis-plus查询字段中含有关键词时异常问题

 解决办法:在实体类上加上注解并加上反引号

解决mybatis-plus查询字段中含有关键词时异常问题_第1张图片

问题分析思路:

1.用自动生成代码工具生成的增删改查代码,发现都用不了
报错原因都是sql错误。
2.然后我就把日志打印生成的sql复制到数据库去执行 发现也查询不出来,会像下面这样

解决mybatis-plus查询字段中含有关键词时异常问题_第2张图片

3.查询报错了,我就改变了如下的查询方式,用select * 查出来了记录,说明还是上面的sql有问题

解决mybatis-plus查询字段中含有关键词时异常问题_第3张图片

4.定位问题以后,知道是sql的问题,我就看字段发现有一个大写的字段好像是关键字,于是我就加上了反引号 `order`去查询就成功了。

解决mybatis-plus查询字段中含有关键词时异常问题_第4张图片

 5.由于查询语句是从日志打印里面copy出来的,所以就断定肯定也是同样的问题导致的原因,此时我也断定问题就在这里,就去网上找到了加上反引号的注解
@TableField("`order`")
,也算是学习到了新的注解用法,原来只知道
@TableField(value = "false")这种用法

 总结:是由于查询的时候mybatiplus不能识别你的字段是否为关键字,这是需要你手动在创建实体类的时候在关键字字段的上面加上注解@TableField("`order`")用反引号包起来。这个反引号里面的order是一个关键字,包起来就可以解决了。

你可能感兴趣的:(mybatis,数据库)