我在使用该getFetchSize()功能时遇到了麻烦。
getFetchSize()
我只需要知道SQL查询是否返回零行。
我已经尝试过以下简单的语句:
if (rs.getFetchSize()==0) System.out.println("HEADLINE");
类型rs是哪里ResultSet。上面的代码似乎不起作用。无论是否rs为空,它将始终打印该消息。
rs
ResultSet
我检查了SQL查询本身,当存在行时它正确返回了非空结果。
关于如何确定查询是否已返回0行的任何想法?我用谷歌搜索,找不到任何答案。
ResultSet.getFetchSize()不返回结果数!从这里:
使用标准JDBC,还可以指定每次查询的数据库往返行程中获取的行数,该数量称为获取大小。
您可以遍历结果集,如果没有任何条目,则可以确定没有结果。为什么不能立即获得结果大小?因为数据库正在向您返回指向其结果的指针,并且数据库依赖于您进行遍历(返回到服务器的每一行)。