ResultSet getFetchSize()似乎不起作用?

ron*_*ack 6 java sql jdbc

我在使用这个getFetchSize()功能时遇到了麻烦.

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

我试过这个简单的陈述:

if (rs.getFetchSize()==0)
    System.out.println("HEADLINE");
Run Code Online (Sandbox Code Playgroud)

其中rs是的ResultSet类型.上面的代码似乎不起作用.它始终打印消息是否rs为空.

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

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

Bri*_*new 21

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

标准JDBC还允许您指定查询时每个数据库往返提取的行数,此数字称为提取大小

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