Programming/JAVA
Execute, ExecuteQuery, ExecuteUpdate 차이점
dev?
2022. 2. 8. 18:28
반응형
2022.02.08 - [Programming/Database] - JDBC 드라이버 로딩 및 Connection 생성
Execute | ExecuteQuery | ExecuteUpdate |
수행결과로 Boolean 타입(true/false) 값을 반환 |
수행결과로 ResultSet 객체의 값을 반환 | 수행결과로 Int 타입의 값을 반환 |
1. Execute
- 수행결과로 Boolean 타입의 값을 반환
- 모든 구문을 수행 가능
PreparedStatement pstmt = con.prepareStatement("INSERT INTO 테이블명 VALUES (?, ?)");
pstmt.setInt(1, 200);
pstmt.setString(2, "테스트");
boolean result = pstmt.execute();
2. ExecuteQuery
- 수행결과로 ResultSet 객체의 값을 반환
- SELECT 구문을 수행할 때 사용
pstmt = con.prepareStatement("SELECT ID, NAME FROM SAMPLE_TABLE");
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
DTO vo = new DTO();
vo.setName(rs.getString("name");
vo.setAge(rs.getInt("age");
list.add(vo);
}
2. ExecuteUpdate
- 수행결과로 Int 타입의 값을 반환
- SELECT 구문을 제외한 다른 구문을 수행할 때 사용
- INSERT / DELETE / UPDATE 관련 구문에서는 반영된 레코드의 건수를 반환
- CREATE / DROP 관련 구문에서는 -1 을 반환
pstmt = con.prepareStatement("DELETE FROM TABLE WHERE NAME=?");
pstmt.setString(1, "TEST");
int result = pstmt.executeUpdate();
반응형