2011-08-10 2 views
1

は、私がここにJDBCでは、FETCHの最後にいつ私が知りますか?

http://www.postgresql.org/docs/current/interactive/sql-fetch.html

を例を以下そしてJavaで手動

FETCH FORWARD 5 FROM liahona; 

次のコマンドをループしています。私は無限ループで上記を持っていて、どのように検出するのか知りたいのですが、私はループを壊すことができるようにデータセットの最後にいます。

+0

フェッチを実行するために使用するステートメントクラスとクエリメソッド(クエリ、更新、コマンド)は何ですか? –

答えて

0

この種のSQLではJDBCを使用しています。行のみ。 JDBCの場合

、あなたはこのようなものが必要:

ResultSet rs = connection.createStatement().executeQuery("select * from mytable"); 
while(rs.next()) { // next() returns false if there are no more rows 
    int col1 = rs.getInt(1); 
    String col2 = rs.getString(2); 
} 
+0

クラッシュする巨大なデータセット – deltanovember

+0

何もクラッシュしてはならない - 一度に1つの行しか取得しない – Bohemian

1

あなたはFETCH FORWARDを実行するときに空の結果セットを取得し、あなたはカーソルの総結果セットの最後にあります。

関連する問題