PreparedStatement之后的非空数据库表的空ResultSet

时间:2015-12-30 06:34:06

标签: java mysql jdbc

我编写了一个从表中检索数据的查询,然后使用getRow()方法检查结果集中的行数。这是打印0,但我的表中包含多个行列数据。

我在这里查看了之前的问题,发现了一个非常相似的here。但与上面提到的不同,我没有定义任何权限,并且很好地建立了与数据库的连接。这是一个非常简单的查询,返回可更新的结果集如下:

if(temp == null) {
                query = "SELECT * FROM altemp1";
                pstmt = cn.prepareStatement(query, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
                temp = pstmt.executeQuery();
                System.out.println("TEMP LENGTH : "+temp.getRow());
            }

temp ResultSet altemp1 是数据库中的。 如果temp为空,则检查上方?出于某种逻辑目的。

2 个答案:

答案 0 :(得分:0)

你需要调用Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not parse for environment production: invalid byte sequence in US-ASCII at /etc /puppet/manifests/site.pp:1 on node puppetwindows.pramati.com Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run 并检查返回代码以获取每个连续的行,包括第一行,然后你需要调用各种其他方法来获取列,其中一个是不是< / em> ResultSet.next()。请参阅Javadoc

答案 1 :(得分:0)

根据JavaDoc(https://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getRow%28%29):

  

[... getRow()]检索当前行号。第一行是数字1,第二行是数字2,依此类推。