我想获得Oracle DB中表集的特定列(比如说ID)的行引用数 我的代码是
String selectTableRowsSQL4 = "SELECT row "
+ "FROM contract_type_info"
+ "WHERE ID = ?";
preparedStatementSelect = dbConnection.prepareStatement(selectTableRowsSQL4);
preparedStatementSelect.setInt(1, 5);
preparedStatementSelect.getResultSet().getRow();
System.out.println("Row: " + preparedStatementSelect.getResultSet().getRow());
当我运行上面的代码时,我的结果为零(0)!
实际上我试图找出ID = 5在哪一行?
答案 0 :(得分:0)
使用此查询
select count(row)
from countract_type_info
where id = 10
在你的情况下
String selectTableRowsSQL4 = "SELECT count(row) "
+ "FROM contract_type_info"
+ "WHERE ID = ?";
答案 1 :(得分:0)
下面的东西?而且你从来没有执行过你的查询。您将使用PreparedStatement.executeQuery()执行查询,该{{3}}将返回ResultSet object
。
preparedStatementSelect = dbConnection.prepareStatement(selectTableRowsSQL4);
preparedStatementSelect.setInt(1, 5);
ResultSet rs = preparedStatement.executeQuery();
while(rs.next()){
System.out.println("Row: " + rs.getRow());
}
答案 2 :(得分:0)
你是executing准备好的陈述吗?
execute方法执行SQL语句并指示其形式 第一个结果。然后,您必须使用方法getResultSet或 getUpdateCount用于检索结果,getMoreResults用于移动 任何后续结果。
您需要在获取结果集之前执行此操作。有关详细信息,请参阅JDBC tutorial。
您必须使用the SQL count() method获取行数,或(效率较低)迭代结果集并使用ResultSet.next()
计算