JDBC 准备好的语句不起作用 [关闭]
Posted
技术标签:
【中文标题】JDBC 准备好的语句不起作用 [关闭]【英文标题】:JDBC Prepared Statements not working [closed] 【发布时间】:2014-04-11 18:28:59 【问题描述】:以下 jdbc 代码给出错误mysqlSyntaxErrorException: You have an error in your SQL syntax;
。帮我找到它。
String selectqry="select * from raildb"+ "WHERE id=?";
Class.forName("com.mysql.jdbc.Driver");
Connection con=DriverManager.getConnection(host,uName,uPass);
ps1=con.prepareStatement(selectqry);
ps1.setInt(1,MyModel.idno);
ResultSet rs=ps1.executeQuery();
【问题讨论】:
如果你已经阅读了异常中的错误信息,那就很明显了。 根本不明白为什么需要连接 2 个字符串 ... 【参考方案1】:在查询中添加空格
String selectqry="select * from raildb "+ "WHERE id=?";
^
【讨论】:
【参考方案2】:在 tablename 和关键字 where
之间的 sql 查询中添加空格String selectqry="select * from raildb "+ " WHERE id=?";
【讨论】:
以上是关于JDBC 准备好的语句不起作用 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
带有准备好的语句的 PDO bindParam() 不起作用