小编典典

ResultSet getFetchSize()似乎不起作用?

sql

我在使用该getFetchSize()功能时遇到了麻烦。

我只需要知道SQL查询是否返回零行。

我已经尝试过以下简单的语句:

if (rs.getFetchSize()==0)
    System.out.println("HEADLINE");

类型rs是哪里ResultSet。上面的代码似乎不起作用。无论是否rs为空,它将始终打印该消息。

我检查了SQL查询本身,当存在行时它正确返回了非空结果。

关于如何确定查询是否已返回0行的任何想法?我用谷歌搜索,找不到任何答案。


阅读 174

收藏
2021-03-23

共1个答案

小编典典

ResultSet.getFetchSize()不返回结果数!从这里

使用标准JDBC,还可以指定每次查询的数据库往返行程中获取的行数,该数量称为获取大小。

您可以遍历结果集,如果没有任何条目,则可以确定没有结果。为什么不能立即获得结果大小?因为数据库正在向您返回指向其结果的指针,并且数据库依赖于您进行遍历(返回到服务器的每一行)。

2021-03-23