从Java向SQL查询中插入变量
如何在SQL查询中插入变量 这就是我目前所拥有的从Java向SQL查询中插入变量,java,mysql,Java,Mysql,如何在SQL查询中插入变量 这就是我目前所拥有的 public String getBugList(int amount) { Connection con = DatabaseConnection.getConnection(); try (PreparedStatement ps = con.prepareStatement("SELECT submitter, report FROM bugs_log ORDER BY id DESC limit )) } 我正在尝试列
public String getBugList(int amount) {
Connection con = DatabaseConnection.getConnection();
try (PreparedStatement ps = con.prepareStatement("SELECT submitter, report FROM bugs_log ORDER BY id DESC limit ))
}
我正在尝试列出“数量”错误。因此,如果我输入2,则只会列出前2名。请尝试以下代码:
public String getBugList(int amount) {
Connection con = DatabaseConnection.getConnection();
String query = "SELECT submitter, report FROM bugs_log ORDER BY id DESC limit ?";
try(PreparedStatement ps = con.prepareStatement(query)) {
ps.setInt(1, amount);
}
}
放一个?在所需的变量位置。然后,从这个API调用变量类型的set方法
在您的情况下,您需要一个int,因此请调用
ps.setInt(1,x)
。如果您想要多个变量,或者在SQL术语中是一个“参数”,只需使用多个?
。PreparedStatement setter方法需要参数索引。最大索引等于查询中的?
。虽然看起来是正确的,但我不能说我是这个答案的粉丝,因为它不使用try-with-resources,因为该语言结构非常适合(OP使用了它)@Vulcan我的公司一直在使用Java 6,直到大约两周前……我们最终升级到Java 7,但我们可以说我一直在编写代码,在Jay Gosling还是个年轻人的时候就可以编译了。