小编典典

未设置java sql异常参数

java

我试图从具有2个参数的表的数据库中获取数据,当我尝试执行此代码时,它给出错误:参数未设置。我认为这是一个小错误,但我找不到。问题可能出在2个参数,我以前从未使用过2个。谁能帮我?

public static void tabelVullen(int Kaartnummer,int Datum){
Connection con;
    try {
        con = DriverManager.getConnection(DB, "", "");
        PreparedStatement s = con.prepareStatement("Select Kaartnummer, Datum, Maaltijd, Prijs FROM Logbestanden WHERE Kaartnummer=? AND Datum=?");
        s.setInt(1, Kaartnummer);
        rset = s.executeQuery();

        while(rset.next()){
        String[] Logboek = new String[4];
        Logboek[0]=rset.getString("Kaartnummer");
        Logboek[1]=rset.getString("Datum");
        Logboek[2]=rset.getString("Maaltijd");
        Logboek[3]=rset.getString("Prijs");
        model.addRow(Logboek);

        }


        s.close();
        con.close();

    } catch (SQLException e) {
        System.out.println("Error LogbestandenWeergeven: " + e);

    }
}

这是错误

Error LogbestandenWeergeven: net.ucanaccess.jdbc.UcanaccessSQLException: Parameter not set

阅读 197

收藏
2020-11-26

共1个答案

小编典典

您只需要为Datum值提供第二个参数:

PreparedStatement s = con.prepareStatement("Select Kaartnummer, Datum, Maaltijd, Prijs FROM Logbestanden WHERE Kaartnummer=? AND Datum=?");
s.setInt(1, Kaartnummer);
s.setInt(2, Datum);  // this is what you are missing
rset = s.executeQuery();
2020-11-26