相关疑难解决方法(0)

获取Java中ResultSet返回的行数

我用过一个ResultSet返回一定数量的行.我的代码是这样的:

ResultSet res = getData();
if(!res.next())
{
    System.out.println("No Data Found");
}
while(res.next())
{
    // code to display the data in the table.
}
Run Code Online (Sandbox Code Playgroud)

有没有方法可以检查返回的行数ResultSet?或者我必须自己写?

java resultset

58
推荐指数
5
解决办法
23万
查看次数

ResultSet是将所有数据加载到内存中还是仅在请求时加载?

我有一个.jsp页面,我有一个显示Oracle数据库记录的GUI表.该表允许典型的分页行为,例如"FIRST","NEXT","PREVIOUS"和"LAST".记录是从执行SQL语句返回的Java ResultSet对象中获取的.

这个ResultSet可能非常大,所以我的问题是:

如果我有一个包含一百万条记录的ResultSet但我的表只显示ResultSet中前十条记录中的数据,那么只有当我开始请求记录数据时才会获取数据,或者一旦ResultSet将所有数据完全加载到内存中从执行SQL语句返回?

java database jdbc

34
推荐指数
2
解决办法
3万
查看次数

如何在ResultSet中查找记录数

我正在ResultSet查询Oracle查询.当我ResultSet在无限循环中迭代它时.

ResultSet rs = (ResultSet) // getting from statement
while (rs.next()) {
//
//
}
Run Code Online (Sandbox Code Playgroud)

这个循环没有终止,所以我试着找到使用的记录数,rs.getFetchSize()并返回一个值10.我想知道这是否是找出ResultSet中记录数的正确方法,如果计数为10,为什么它会进入无限循环.请提出你的意见.

java jdbc resultset

5
推荐指数
2
解决办法
2万
查看次数

检索ResultSet中的条目数

在SO的一些答案中,建议使用ResultSet函数getRow()来获取查询结果中的条目数.但是,遵循代码

private static int getSizeOfResultSet(ResultSet result) throws SQLException{
    if(result != null){
        int count = 0;
        while(result.next()){
            count++;
        }
        System.out.println("Count of resultset is " + result.getRow() + " and count " + count);
            return result.getRow();
    }else{
        System.out.println("Result is null");
        return 0;
    }
}
Run Code Online (Sandbox Code Playgroud)

正在回报我的事情

Count of resultset is 0 and count 1
Run Code Online (Sandbox Code Playgroud)

确保条目存在时(在JUnit测试用例中).请注意,此项目必须符合Java6标准,因此可能是问题所在.使用该getRow()功能有什么需要考虑的吗?

另外,我尝试过

result.last();
int c = result.getRow();
result.beforeFirst();
return c;
Run Code Online (Sandbox Code Playgroud)

就像这里提到的那样,结果仍然是0.

编辑:我应该提到while(result.next())-loop是用于测试目的.没有循环的行为完全相同(即0).

java sqlite resultset

1
推荐指数
1
解决办法
125
查看次数

标签 统计

java ×4

resultset ×3

jdbc ×2

database ×1

sqlite ×1