2 回答

TA貢獻(xiàn)1874條經(jīng)驗(yàn) 獲得超12個(gè)贊
where Username where Username = ?
您的 SQL 查詢無效。你有一個(gè)where
子句兩次。

TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊
我可以看到您的代碼有兩個(gè)問題。首先,正如@Michael 指出的那樣,您有兩個(gè)WHERE子句。也許這只是一個(gè)復(fù)制錯(cuò)誤,或者這可能是您的代碼的逐字逐句。無論哪種情況,都是錯(cuò)誤的,您的查詢應(yīng)該只有一個(gè)WHERE子句。另一個(gè)問題是您正在執(zhí)行以下調(diào)用來執(zhí)行查詢:
statement.executeQuery(sql);
PreparedStatement#executeQuery沒有不帶任何參數(shù); 只需不帶參數(shù)調(diào)用它。所以這里是我給你的建議:
String sql = "SELECT Username, Userpassword FROM Users WHERE Username = ?";
statement = con.prepareStatement(sql);
statement.setString(1, UserName);
ResultSet rs = statement.executeQuery();
while (rs.next()) {
// process a row
}
添加回答
舉報(bào)