gpt4 book ai didi

java - 跳过结果集中的 if 条件

转载 作者:行者123 更新时间:2023-11-29 10:51:40 24 4
gpt4 key购买 nike

我正在尝试在java中创建一个登录函数来测试数据库中是否存在用户。如果是,则打印出状态 (1 , 2),其中 1 是管理员,2 是学生。在结果集中,我有 if 条件来测试这些值。我的问题是跳过了 status == 1 的 if 语句。这是我的代码:

public void Login(String username,String password) {

try{
Statement st = conn.createStatement();
String query = "Select iduser, username, pass, status, firstname, lastname from users";
ResultSet rs = st.executeQuery(query);
if (rs.next()) {

int iduser = rs.getInt("iduser");
String firstname = rs.getString("firstname");
String lastname = rs.getString("lastname");
int status = rs.getInt("status");

if(status == 1){
System.out.println("Admin");
}
else if(status == 2){
System.out.println("Student");
}
} else {
JOptionPane.showMessageDialog(null,"User not found!");
}catch (Exception e){
System.out.println(e);
}
}

这是我的数据库中的表 Database User Table

最佳答案

尝试将 if (rs.next()) 替换为 while(rs.next())

String query = "从用户中选择 iduser、用户名、通行证、状态、名字、姓氏";从表中获取“多个”所需记录。

iduser 2 的记录可能会在 iduser 1 之前放入表中和/或检索。

关于java - 跳过结果集中的 if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43621246/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com