谁能帮我看看查询语句条件有什么问题?

来源:2-5 JDBC实战---搭建模型层 Ⅲ

高原火狐狸

2016-03-02 15:34

我写的sql语句:

Connection conn = DBUtil.getConnection();
        String sql = ""+
                " select * from imooc_goddess where id = ?";
        PreparedStatement ptmt = conn.prepareStatement(sql);
        ptmt.setInt(1, id);

好像没什么问题呀,直接在mysql中可以查出数据,但执行时报错:

Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.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
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)


这个”?“有什么问题?

写回答 关注

3回答

  • weibo_直走还是转角_0
    2016-03-03 00:21:32
    已采纳
  • 高原火狐狸
    2016-03-03 09:51:28

    不好意思,提交了问题自己就发现犯了个低级错误,现加上一句:

    ResultSet rs = ptmt.executeQuery(sql);

    就是这里,执行时又加了“sql”变量,相当于语句连续执行了两次,而且中间没有分割,所以出现了语法错误。

    谢谢各位答复,只能采纳一个,就按答复顺序吧,多包涵。

  • 意随心飞
    2016-03-03 01:15:09

    ptmt.execute(); 少一句执行吧

JDBC之 “ 对岸的女孩看过来”

一起领略JDBC的奥秘,为进一步学习集成框架打下良好的基础

99327 学习 · 856 问题

查看课程

相似问题