SQL
[SQL, JSP] 방금 INSERT 한 데이터의 PK 값을 받아오기
jane.dev
2021. 8. 22. 23:24
반응형
프로젝트를 하는 도중 추가할 기능이 생김
( 기존 영화 정보를 입력하는 Form에 영화 티저 동영상 주소를 입력하는 Form을 추가 )
1. 기존 테이블에서 컬럼을 추가하지 않고 새로 테이블을 생성해 외래키로 기존 테이블의 기본키 값과 연결
( 기존 테이블의 mid와 새로 생성한 테이블의 mid가 연결 )
2. Form에 정보를 입력하면 이를 INSERT 구문으로 기존 테이블 DB에 저장하는데,
문제는 기존 테이블의 기본키가 AUTO_INCREMENT라서 Form에서 받아올 값이 없음
→ 새로 생성한 테이블에 mid 값을 입력할 수 없음
( 구글링으로 mybatis의 selectkey라는 기능이 내가 구현하고자 하는 로직과 비슷한 것 같은데 더 간단하게 해결하고 싶었음 )
그래서 생각한 해결방법
Form에서 정보를 입력하면 service에서 DAO 를 생성해 기존 테이블로 INSERT 구문을 실행함
그리고 직후에 아래 구문을 실행해 가장 최근에 추가한 데이터의 기본키 값을 받아옴
SELECT LAST_INSERT_ID()
받아온 기본키 값으로 새로 생성한 테이블에 INSERT 구문으로 DB에 값을 저장