【MybatisPlus】表名或字段名是Mysql关键字如何解决
一、问题描述
表名order和字段名key是Mysql数据库的关键字,数据库操作全部失败
二、问题解决
1、如果是表名
给实体类打上@TableName注解,加上``就好了,采用配置自己规定表名,不使用默认配置,如图:
@Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @TableName("`order`") public class Order implements Serializable { private static final long serialVersionUID = 1L; /** * id */ @TableId(value = "id", type = IdType.AUTO) private Long id; }
2、如果是字段名
将生成的实体加上``处理
@Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @TableName("`order`") public class Order implements Serializable { private static final long serialVersionUID = 1L; /** * id */ @TableId(value = "id", type = IdType.AUTO) private Long id; @TableField(value = "`key`") private String key; }