have an error in your SQL syntax改怎么解决?

问题:

### Error querying database.  Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from graduate-college' at line 6
### The error may exist in file [C:\Users\pan.luo\Desktop\项目\bisheluo\bisheLuo\server-echarts\target\classes\mapper\echarts\GraduateCollegeMapper.xml]
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: select date-year,                college-name ,                graduate-number ,                employment-number ,                id,         from graduate-college
### Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from graduate-college' at line 6
; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'from graduate-college' at line 6
<resultMap type="GraduateCollege" id="GraduateCollegeResult">
    <id     property="id"       column="id"      />
    <result property="collegeName"       column="college-name"      />
    <result property="graduateNumber"     column="graduate-number"    />
    <result property="employmentNumber"     column="employment-number"    />
    <result property="dateYear"        column="date-year"        />
</resultMap>




<select id="selectGraduateCollegeVo" resultMap="GraduateCollegeResult">
    select date-year,
           college-name ,
           graduate-number ,
           employment-number ,
           id,
    from graduate-college
</select>
阅读 2.8k
1 个回答

多了个逗号

image.png


另外,看你有些字段名字中间有 - ,为何会有这样的设计?对于数据库设计而言,只能有帕斯卡命名法(Pascal case)和蛇形命名法(snake case)两种命名方式。

帕斯卡命名法(Pascal case):帕斯卡命名法在进行命名时,每个单词首字母均大写。例如:VariableOne、VariableTwo。
蛇形命名法(snake case):下划线命名法变量名和函式名称是由二个或二个以上单词连结在一起,每个单词用下划线隔开并且单词都是小写,例如:print_employee。

在这里,应当使用反引号将字段名字包裹起来。

select `date-year` from TABLE;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏