ResultSet 에서 전체 row를 구할려고 했는데 막상 해보니 에러가 발생
rs.last();
int totalRowCount = rs.getRow();
rs.first();
Exception 내용이
------------------------------------------------------
java.sql.SQLException: 전방향 전용 결과 집합에 부적합한 작업이 수행되었습니다 : last
------------------------------------------------------
그래서 찾아보니까 아래와 같이 statement 를 생성할때 옵션을 지정해 줘야 한다.
conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
그리고
rs.first();
을 하게 되면 rs.next()을 한번 한 효과가 있다.
그래서 rs를 가져올때 rs.next() 부터 하게 되면 첫번째 데이타를 가져오지 못한다.
rs.first();
while(rs.next()) {
rs.getString("aa");
}
위와같이 하게 되면 첫번째 데이타를 가져오지 못하니 첫번째 데이타는
while(rs.next()) 전에 먼저 한번 get 해야 한다.
반응형
'JAVA' 카테고리의 다른 글
자바 정규식으로 html태그 제거 (0) | 2015.03.09 |
---|---|
서버 아이피 알아 오기 (0) | 2015.03.05 |
resultset생성시 인자값을 이용한 설정 (0) | 2015.03.05 |
JAVA ZIP파일 생성 (0) | 2015.03.05 |
JAVA PHP MD5 연동이 안되는 경우 (0) | 2015.03.04 |