在mybatis与springboot整合的项目里面,报如下错误:2018-06-03 15:16:50.148 ERROR 20777 --- [-nio-80-exec-16] o.s.boot.web.support.ErrorPageFilter : Forwarding to error page from request [/blogfirst] due to exception [
### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146
### The error may exist in file [/home/tomcat/apache-tomcat-8.5.8/webapps/myDemo/WEB-INF/classes/mapper/BlogMapper.xml]
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT * FROM ARTICLE ORDER BY create_time DESC
### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146
; bad SQL grammar []; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146]
org.springframework.jdbc.BadSqlGrammarException:
### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146
### The error may exist in file [/home/tomcat/apache-tomcat-8.5.8/webapps/myDemo/WEB-INF/classes/mapper/BlogMapper.xml]
### The error may involve defaultParameterMap
### The error occurred while setting parameters
### SQL: SELECT * FROM ARTICLE ORDER BY create_time DESC
### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146
; bad SQL grammar []; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown error 1146
原因分析:
在 MySQL 中,数据库和表其实就是数据目录下的目录和文件,因而,操作系统的敏感性决定数据库和表命名的大小写敏感。
数据库和表名在 Windows 中是大小写不敏感的,
而在大多数类型的 Unix/Linux 系统中是大小写敏感的。
若sql语句的表名称大小写有误,则会报错。如数据库表名为user

linux中,若写为select * from USER

则会报这个错误。

本文针对MyBatis与SpringBoot整合时出现的未知错误1146问题进行详细分析,主要原因是表名大小写不一致导致的数据库查询失败。
1938

被折叠的 条评论
为什么被折叠?



