我是Java的初学者,但我有以下代码
limit = con.prepareStatement("SELECT COUNT(*) FROM San_CadastraDigital WHERE Cliente_Id = ?");
public String Verify(String client) {
try {
limit.setString(1, client);
ResultSet rs = limit.executeQuery();
while (rs.next()) {
int limitDigital = rs.getInt(0);
if (limitDigital < 3) {
return "1";
} else {
return "0";
}
}
} catch (SQLException e) {
ui.writeLog(e.getMessage());
return "0";
}
return "0";
}
但我得到一个错误,表示索引0中的列超出了范围。
我的查询在我的数据库中正常工作。
如何获得查询结果?
答案 0 :(得分:2)
根据API docs for ResultSet#getInt(int):
columnIndex - 第一列是1 ,第二列是2,...
答案 1 :(得分:-1)
请改为尝试:
if(!rc.first())
{
//no rows
return "0";
}
do {
int limitDigital = rs.getInt(0);
if (limitDigital < 3) {
return "1";
} else {
return "0";
}
} while (rs.next())
我认为您正在使用rs.next()移动光标并跳过第一个结果。