Auto-Increment( @GeneratedValue(strategy = GenerationType.IDENTITY))를 위한 DB 수정Software Development/Trial-and-error2024. 2. 16. 23:59
Table of Contents
더미데이터 위에도 회원가입이 가능해야 하는데, 초창기 엔티티를 만들 때 미처 고려해주지 못했다.
이를 위해 단순히
@GeneratedValue(strategy = GenerationType.IDENTITY)
만 붙여줬는데, DB에 반영되지 않는 문제가 있었다.
수정 이후라 잘 반영되어 있지만, Auto Increment에 체크를 해줘도 다른 테이블과 제약조건이 걸린 탓에 반영이 안되는 상황.
이를 위해, 잠시 DB의 외래 키 제약조건을 비활성화 하고, 다시 활성화 해주는 작업이 필요했다.
SET foreign_key_checks = 0;
alter table member
modify id bigint auto_increment;
alter table member
auto_increment = 1;
SET foreign_key_checks = 1;
첫번째 라인을 통해 일시적으로 외래 키 제약조건을 비활성화 할 수 있는데,
유의할 점은 이는 한 번의 세션에만 유효하므로,
auto_increment를 설정해주는 쿼리와 함께, 한 번의 쿼리로 날려줘야 한다는 부분이다.
'Software Development > Trial-and-error' 카테고리의 다른 글
@찐빵1 :: 위기주도학습
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!