MySQLSyntaxErrorException 2018-01-08

用JDBC连接数据库,采用的是PreparedStatement进行数据查询,
执行sql的时候出现问题:
Caused by: 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

conn = JdbcUtils.getConn();
String sql = "select * from t_user where username=? ";
ps = conn.prepareStatement(sql);
ps.setString(1, "test1");
ps.executeQuery(sql);

sql语句将问号替换成字符串确定是没有问题可以执行的。
其他项目同样是这样子查询数据没出问题,就只有这个地方出了问题,以为是项目有什么东西没导进来,可是不科学啊,错误信息说的是sql语法出问题。反正查半天不知道还有什么原因很烦。最后查到个跟我一样问题的,发现是 ps.executeQuery(sql); 这里出了毛病,去掉参数sql就好了。
就这问题折腾了一小时ヽ(o`皿′o)ノ
果然还是不够细心,太急躁。还要加油!
另外
关于MySQLSyntaxErrorException,除了其他语法错误,最常见抛这个异常的原因是表名字段名用了mysql的关键字。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容