解决MySQL版本与JDBC驱动版本不对应导致的错误

时间:2024-03-22 19:03:04

我的MySQL版本是5.7.21的,对应的JDBC驱动应该是mysql-connector-java-5.1.46-bin.jar

如果使用低版本的驱动,就会出现如下错误:

HTTP Status 500 - javax.servlet.ServletException: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: 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 '?' at line 1


解决方法是下载对应MySQL版本的驱动,这里以我的MySQL5.7.21版本为例,解压后的列表如下:

解决MySQL版本与JDBC驱动版本不对应导致的错误

把驱动文件mysql-connector-java-5.7.46.jar复制到eclipse项目目录下如图所示的位置:解决MySQL版本与JDBC驱动版本不对应导致的错误


右键添加到路径后就可以了。

但是有时可能还是会出错,这时候可以再次右键点击lib下的mysql-connector-java-5.7.46.jar文件,然后选中Build Path 中的Configure Build Path,会弹出如下窗口:

解决MySQL版本与JDBC驱动版本不对应导致的错误

勾选上mysql-connector-java-5.7.46.jar文件后,Apply and Close就可以了。


如果还是有错,那就可能是数据库中的字段名和Java代码中的变量名同名了,这时也可会引起同样的错误。