0

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がどの行にあるかを調べようとしていますか?

4

3 に答える 3

0

このクエリを使用する

select count(row)
from countract_type_info
where id = 10   

あなたの場合

String selectTableRowsSQL4 = "SELECT count(row) "
+ "FROM contract_type_info"
+ "WHERE ID = ?";  
于 2013-02-12T10:51:57.437 に答える
0

以下のようなもの?? また、そもそもクエリを実行したことはありません。を返すPreparedStatement.executeQuery()を使用してクエリを実行する必要がありますResultSet object

preparedStatementSelect = dbConnection.prepareStatement(selectTableRowsSQL4);
preparedStatementSelect.setInt(1, 5);
ResultSet rs = preparedStatement.executeQuery();
while(rs.next()){
System.out.println("Row: " + rs.getRow());
}
于 2013-02-12T10:52:05.793 に答える
0

その準備されたステートメントを実行していますか?

execute メソッドは SQL ステートメントを実行し、最初の結果の形式を示します。その後、メソッド getResultSet または getUpdateCount を使用して結果を取得し、getMoreResults を使用して後続の結果に移動する必要があります。

結果セットを取得する前に、これを実行する必要があります。詳細については、JDBC チュートリアルを参照してください。

SQL の count() メソッドを使用して行数を取得するか、 (あまり効率的ではありませんが) 結果セットを反復処理し、ResultSet.next()

于 2013-02-12T10:54:08.877 に答える