我正在尝试使用Java中的PreparedStatement执行查询。
尝试执行查询时出现错误号1064(语法错误)。
我已经在MySQL查询浏览器中使用替代值测试了此方法,效果很好。
我的代码有什么问题?
以下是相关代码:
String query = "select MemberID, MemberName from members where MemberID = ? or MemberName = ?";
Connection conn = DriverManager.getConnection(DATABASE_URL, USERNAME, PASSWORD);
PreparedStatement s = conn.prepareStatement(query);
s.setInt(1, 2);
s.setString(2, "zen");
ResultSet rs = s.executeQuery(query);
Run Code Online (Sandbox Code Playgroud)
这是我得到的例外:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以获取在'?附近使用的正确语法。或MemberName =吗?在第1行