rs 개수 가지고 오기

JAVA 2015. 3. 5. 10:20

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
Posted by 질주하는구
,