[iBATIS/MyBatis]쿼리실행 리턴(Return)결과 차이
INTRO
iBATIS를 사용하는 중에 MyBatis와 쿼리문 실행 리턴결과가 다른것을 알았다. 따라서 잊지않기위해 정리해놓으려고 한다.
iBATIS와 MyBatis의 리턴결과 차이
|
iBATIS |
MyBatis |
SELECT |
SELECT문에 해당하는 결과 |
SELECT문에 해당하는 결과 |
INSERT |
NULL |
1(다중 INSERT도 마찬가지) |
UPDATE |
1 |
UPDATE된 행의 갯수 반환(없으면 0) |
DELETE |
DELETE된 행의 갯수 |
DELETE된 행의 갯수(없으면 0) |
출처: https://sdevstudy.tistory.com/19 [.]
Ibatis Query
<select>
- 성공 : Select문에 해당 결과
- 실패 : 에러
<insert>
- 성공 : null
- 실패 : 에러
<update>
- 성공 : 1
- 실패 : 0
<delete>
- 성공 : delete된 행의개수
- 실패 : 에러
Mybatis Query
<Select>
- 성공 : Select문에 해당하는결과
- 실패 : 에러
=> (java spring 환경) 해본결과: select문에 해당되는 결과가 없으면 NullPointerException 이 발생함
<Insert>
- 성공 : 1 (여러개일경우도 1)
- 실패 : 에러
<Update>
- 성공 : Update된 행의 개수 반환 (없다면 0)
- 실패 : 0
<delete>
- 성공 : Delete된 행의개수 (없다면 0)
- 실패 : 에러