인프런 커뮤니티 질문&답변

나나님의 프로필 이미지
나나

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

스프링 통합 테스트

@Transactional generate key 질문

해결된 질문

작성

·

300

0

안녕하세요!

'스프링 통합 테스트' 강의 중 궁금한 사항이 생겨서 올립니다.

@Transactional 어노테이션을 붙이면 각 테스트 항목 실행 후 롤백한다고 하셨는데, insert문 실행됐을 때 자동 업데이트되는 키 값은 계속 증가합니다.

왜 이 값은 롤백이 되지 않는지 문의드립니다. 감사합니다!

답변 1

0

안녕하세요. 나나님, 공식 서포터즈 y2gcoder입니다.

해당 부분에서 자동 업데이트되는 pk 값은 DB에서 자동 업데이트해주는 값입니다. MySQL에서는 auto_increment와 같은 기능인데요. 이러한 기능들은 보통 transaction rollback 시에 값을 되돌리지 않습니다. 해당 이유에 대해서는 밑의 링크들을 참조해주세요~

 

https://stackoverflow.com/questions/449346/mysql-auto-increment-does-not-rollback

https://wisdom-and-record.tistory.com/135

 

감사합니다.

나나님의 프로필 이미지
나나

작성한 질문수

질문하기