我正在使用 jdk 1.7
、netbeans 7.1.2
和 MySQL 5
在 Java SE 中编写一个简单的应用程序。
但是我在下一个代码中出现错误:
String sql = "SELECT idpaciente, ap_paterno, ap_materno, nombres, edad, direccion, telefono, descuento, movil, email, docId FROM paciente WHERE ap_paterno LIKE ? ";
pst = con.prepareStatement(sql);
pst.setString(1, paciente.getApellidoPaterno());
ResultSet rs = pst.executeQuery(sql);
这段代码编译良好,但执行后,我有一个语法错误,netbeans 说:
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
使用netbeans的调试器,错误在executeQuery中,但我找不到我的错误。
最佳答案
PreparedStatement.executeQuery()
不接受任何参数,但是因为该接口(interface)继承 Statement.executeQuery(String sql)
你正在调用它。只需调用:
ResultSet rs = pst.executeQuery();
关于java - ReadyStatement 和 LIKE 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10763723/