Cuma, Ekim 09, 2009

Java'da ResultSet size(row count) almak

Java'da resultset size ını veren direk bir method yok. Bunun için ResultSeti scrollable yapmamız gerekiyor. Eğer preparedstatement kullanıyorsak aşağıdaki gibi bir şey yapabiliriz.
pstmt = conn.prepareStatement(sqlstr,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
pstmt.setString(1,param)

Eğer statement kullanılıyorsa;
Statement stmt = conn.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR _READ_ONLY);

Bundan sonra Resultset table içinde son sona giderek row number alacağız. En sonda da ResultSetteki kayıtlara sırasıyla ulaşmak için cursoru en başa tekrar getiriyoruz.
int countOfRecords = 0;
if (rs != null) {
rs.last();//move cursor to the last record
countOfRecords = rs.getRow();
rs.beforeFirst();//move cursor to the first record
}

1 yorum: