0

I'm trying to count the input and match it with the data field in database then count the status and display the number of books that the input had borrowed.

        Statement statement = conn.createStatement();

        String sql = "SELECT COUNT(jtfMemberID.getText()) as num FROM LOAN WHERE LOAN_STATUS='BORROWED'";

        ResultSet rs1 = statement.executeQuery(sql); 
        int personCount = 0; 

        if(rs1.next()) { 
            personCount = rs1.getInt("num");
            jlbBookBorrow.setText(rs1.getString(personCount));
        }else{
            jlbBookBorrow.setText("0");
        }
4

1 回答 1

0

文本jtfMemberID.getText()将在您的SQL String. 您需要将其提取出来:

String sql = "SELECT COUNT(" + jtfMemberID.getText() + ") as num FROM LOAN WHERE LOAN_STATUS='BORROWED'";

此外,为了防止SQL 注入攻击,请考虑使用PreparedStatement

于 2013-03-03T13:08:08.340 回答