해결된 질문
작성
·
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
감사합니다.