[Java] JDBC ResultSet

이지현·2023년 2월 7일
0

Java

목록 보기
21/46
post-thumbnail

✔️ ResultSet

  • 쿼리 결과 수신

1. Cursor

(1) ResultSet을 가리키는 포인터 역할
(2) next() : 커서가 BOF(Begin Of File)에서 EOF(End Of File)에 도달할 때까지 하나씩 이동시켜 행의 유무를 Boolean으로 반환, 값 조회 전 1회의 선행작업 필수
(3) 관련 메소드

  • Result.first() : 커서 첫번째 행으로 이동
  • Result.last() : 커서 마지막 행으로 이동
  • ResultSet.absolute(int rowIndex) : 전달받은 행 위치로 커서 이동
  • ResultSet.previous() : 커서 이전 행으로 이동
  • ResultSet.beforeFirst() : 커서 BOF 영역 이동
  • ResultSet.InsertRow() : 커서 위치에 새로운 행 삽입

✔️ ResultSet 속성

Type: 커서가 앞 방향으로만 움직이는가, 뒷 방향 조회도 가능한가

  • ResultSet.TYPE_FORWARD_ONLY(Default)
  • ResultSet.TYPE_SCROLL_INSENSITIVE
  • ResultSet.TYPE_SCROLL_SENSITIVE

Concurrency: 수신 결과를 포함하는 resultset이 읽기만 가능한가, 수정도 가능한가

  • ResultSet.CONCUR_READ_ONLY: 읽기 전용
  • ResultSet.CONCUR_UPDATABLE: 업데이트 가능

Holdability: 커밋 이후에도 ResultSet이 open 상태인가, close 시킬 것인가

  • ResultSet.CLOSE_CURSORS_OVER_COMMIT
  • ResultSet.HOLD_CURSORS_OVER_COMMIT

ResultSet의 속성은 Statement나 PreparedStatement의 인스턴스를 만들 때 적용

예시)

stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
profile
2023.09 ~ 티스토리 이전 / 2024.04 ~ 깃허브 블로그 이전

0개의 댓글