我有一行单行查询输出,如下所示
Product | Process | s_int
--------------------------
W01 | AP_03 | 1
要访问我正在使用结果集(rSet)的数据
rSet.first();
do{
product = rSet.getString("PRODUCT");
process = rSet.getString("PROCESS");
s_int = rSet.getInt("S_INT");
System.out.println("Hello Product["+rSet.getString("PRODUCT")+"] Process["+rSet.getString("PROCESS")+"] S_Int["+rSet.getInt("sint")+"]");
}while(rSet.next());
我收到此错误:
结果集没有当前行 并且返回值为null和0.
我做错了什么?
答案 0 :(得分:1)
ResultSet.first()
会返回一个boolean
,表示它是否在一行上:
true
如果光标位于有效行上;false
如果结果集中没有行
在尝试访问ResultSet
之前检查一下。代码的另一种结构:
//final ResultSet rSet = stmt.executeQuery("...");
while (rSet.next())
{
}