mysql表字段含关键字执行sql报错的解决方案

 更新时间:2026年02月25日 08:40:57   作者:chj2013  
在使用MyBatisPlus和MySQL时,遇到SQL查询错误,尝试使用反引号括起关键字字段和在实体类属性上使用反引号注解都不奏效,后来发现,使用MyBatisPlus增强语法拼写的SQL时,不会使用到XML中的语句,因此需要修改实体类上引用的字段名

问题

mybatisplus+mysql执行sql查询时报以下错误:

line 1:43 no viable alternative at input 'SELECTCOUNT(*)FROM(SELECTid,code,name,key' at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:92)
    at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:440)
    at com.sun.proxy.$Proxy123.selectList(Unknown Source)

尝试

1、在sql语句中对关键字字段使用反引号(`)括起来,不起作用

2、在实体类属性注解上,对字段名使用反引号(`)括起来@TableField("`key`"),有效

查询使用了mybatisplus增强语法拼写的sql,没有使用到xml中的语句,所以需要修改实体类上引用的字段名

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • mysql免安装版1067错误终极解决办法图文教程

    mysql免安装版1067错误终极解决办法图文教程

    这篇文章主要介绍了mysql免安装版1067错误终极解决办法图文教程,从笔记本到pc端。本文给大家介绍的非常详细,需要的朋友参考下
    2017-01-01
  • docker拉取MySQL8.0镜像以及安装的完整步骤

    docker拉取MySQL8.0镜像以及安装的完整步骤

    这篇文章主要介绍了如何在Docker中安装和配置MySQL镜像,包括数据挂载、配置文件设置、环境变量配置以及DBeaver数据库连接的常见问题解决方法,需要的朋友可以参考下
    2025-02-02
  • MySQL on k8s 云原生环境部署

    MySQL on k8s 云原生环境部署

    这篇文章主要为大家介绍了MySQL on k8s 云原生环境部署实现过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • mysql中count(), group by, order by使用详解

    mysql中count(), group by, order by使用详解

    mysql中order by 排序查询、asc升序、desc降序,group by 分组查询、having 只能用于group by子句、作用于组内,having条件子句可以直接跟函数表达式。使用group by 子句的查询语句需要使用聚合函数。
    2017-05-05
  • 基于mysql replication的问题总结

    基于mysql replication的问题总结

    本篇文章是对mysql中replication的问题进行了详细分析介绍,需要的朋友参考下
    2013-06-06
  • Mysql精粹系列(精粹)

    Mysql精粹系列(精粹)

    本文都是小编日常整理的mysql精粹内容,需要大家熟练掌握并记忆的知识,非常不错,具有参考借鉴价值,对mysql知识感兴趣的朋友一起看看吧
    2016-09-09
  • MySQL中读写分离方案对比分析与选型建议

    MySQL中读写分离方案对比分析与选型建议

    MySQL读写分离是提升数据库可用性和性能的常见手段,本文将围绕现实生产环境中常见的几种读写分离模式进行系统对比,希望对大家有所帮助
    2025-08-08
  • 解决1093 - You can‘t specify target table报错问题及原因分析

    解决1093 - You can‘t specify target&n

    MySQL 1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,解决方法包括使用临时表、JOIN或EXISTS,避免直接操作表
    2025-07-07
  • sql语句escape查询数据中含通配字符[ %用法详解

    sql语句escape查询数据中含通配字符[ %用法详解

    这篇文章主要为大家介绍了sql语句escape查询数据中含通配字符[ %用法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • mysql函数split功能实现

    mysql函数split功能实现

    mysql 5.* 的版本现在没有split 函数,但有些地方会用,在这里就简单记录一下
    2012-09-09

最新评论