Back-End/Mybatis3.x
[Mybatis3] INSERT 시의 키 생성
리딩리드
2016. 10. 16. 21:05
INSERT 시의 키 생성
- INSERT 할 때에 프라이머리 키를 기반으로 작성하면 보통 자동증가나 시퀀스를 사용한다
- 자동증가 : 자동 생성된 키의 값을 레코드 INSERT 후에 가져옴
- 시퀀스 : INSERT 전에 시퀀스 값 가져옴
1. 자동증가 사용
- 데이터베이스 쪽에 PET_ID 컬럼에 자동증가가 설정되어있다
1) 레코드 INSERT 다음에 생성된 키 값을 가져옴
- useGeneratedKeys와 keyProperty 속성 설정
- 파라미터로서 전달된 Pet 오브젝트의 petId 프로퍼티에 생성된 키가 설정
2) SQL 호출
- SQL 호출 후에는 petId 값이 설정된다
2. 시퀀스 사용
- 데이터베이스 쪽에 PET_ID_SEQ라는 시퀀스 준비되어있다
- 안의 구문은 HSQLDB 용법이다
1) selectKey
- 키를 가져오는 SELECT 문을 기술 하기 위한 태그
- SQL의 실행 결과가 keyProperty에 지정한 프로퍼티에 설정된다