我正在执行Statement查询并将数据存储在ResultSet rs中。
// if no record is returned by the query
if (!rs.next() ) {
Step1
}
// if atleast one record is returned by the query
if(rs.next()){
do {
if (rs.getString(1).equalsIgnoreCase("0")){
Step2
}
if (rs.getString(1).equalsIgnoreCase("1")){
Step3
}
} while (rs.next());
}
但是,如果我从查询中仅获得一条记录,则不会执行任何步骤。如果有人可以指出错误,那将有很大的帮助。
最佳答案
您总是跳过第一个元素,因为在获取一个元素之前您要两次调用.next()
。
尝试做这样的事情:
if (rs.next()) {
// At least one record returned
do {
if (rs.getString(1).equalsIgnoreCase("0")) {
// Step2
}
if (rs.getString(1).equalsIgnoreCase("1")) {
// Step3
}
} while (rs.next());
} else {
// No records returned
}