gpt4 book ai didi

Java使用switch只显示一个SQL结果

转载 作者:行者123 更新时间:2023-12-01 10:10:12 25 4
gpt4 key购买 nike

您好,我正在尝试从数据库中获取结果,以便根据时间将结果设置在不同的文本字段中。例如。这是一个约会查看器,我已检索特定日期的数据,但它仅将第一个结果放入文本框中。

    private void appointmentsView(){

String sqldate = ((JTextField)appointmentDate.getDateEditor().getUiComponent()).getText();

try{

String sql="SELECT appointment_tbl.app_date, appointment_tbl.app_time, patient.Title, patient.first_name, patient.surname, patient.dob FROM appointment_tbl INNER JOIN patient ON appointment_tbl.Customer_ID = patient.Customer_ID where app_date LIKE ('%' || ? || '%') ";
pst=conn.prepareStatement(sql);
pst.setString(1,sqldate);
rs=pst.executeQuery();

if(rs.next()){
String appTime=rs.getString("app_time");
String title=rs.getString("Title");
String fName=rs.getString("first_name");
String sName=rs.getString("surname");
String dob=rs.getString("dob");

switch (appTime) {
case "09:00":
time0900.setText(title+" "+fName+" "+sName+" "+dob);
break;
case "09:30":
time0930.setText(title+" "+fName+" "+sName+" "+dob);
break;
case "10:00":
time1000.setText(title+" "+fName+" "+sName+" "+dob);
break;
case "10:30":
time1030.setText(title+" "+fName+" "+sName+" "+dob);
break;
case "11:00":
time1100.setText(title+" "+fName+" "+sName+" "+dob);
break;

}



}
}catch(Exception e){
JOptionPane.showMessageDialog(null, e);
}

}

最佳答案

您的代码if(rs.next())仅返回第一个结果行。您应该将其替换为 while(rs.next()) 来创建一个迭代所有结果的循环。

关于Java使用switch只显示一个SQL结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36161975/

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