有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

JDBCSQL语句在java程序中接收数据

String sql2="SELECT rates from room_type a,rooms b ,reservation r where a.type=b.type AND b.room_no=r.room_no AND r.cus_id='"+Cusid+"' group by r.cus_id";
pst=conn.prepareStatement(sql2);
rs=pst.executeQuery();
rs.next();
double roomRates = Double.parseDouble(rs.getString("rates"));

我使用了不带if语句的rs.next()。这是正确的吗?我的程序在运行时卡住了。我怀疑原因是使用rs.next()时没有“if”


共 (1) 个答案

  1. # 1 楼答案

    请帮自己一个忙,使用while循环或至少一个条件读取结果集,即使您99,9%确定始终会返回一行:

    double roomRates = 0.0;
    if(!rs.next()){
        //handle no result
    } else {
       roomRates = rs.getDouble("rates") != null ? rs.getDouble("rates") : 0.0;
    }