• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

ddl-auto : none 옵션

22.12.18 01:45 작성 조회수 296

1

조회용 샘플 데이터를 입력하면서 application.yml 파일의 ddl-auto : none 옵션으로 바꾸어주면, 실행 시에 데이터가 더이상 쌓이지 않아야 하는 것이 맞는지 궁금합니다.

저는, 실행할 때 마다 InitDb의 데이터가 쌓여서 저장이 되는데, 이게 맞는 건지 잘 모르겠습니다.

제가 생각한 바로는, 최초에 create 옵션일 때 데이터를 넣어두고, 이후에 none으로 바꾸게 되면 더 이상 데이터가 입력되지 않는 것이라고 생각했는데 혹시 제 생각이 맞다면, none 옵션 시에 insert 쿼리가 안나가게 하는 방법이 있을까요?

참고로 제 스프링부트 버전은 2.7.1입니다.

h2 데이터베이스는 2.1.214가 설치되어있음을 확인했습니다.

답변 1

답변을 작성해보세요.

1

OMG님의 프로필

OMG

2022.12.18

안녕하세요. 갤러하드님, 공식 서포터즈 OMG입니다.
.

샘플 데이터는 ddl-auto 옵션과 무관하게 스프링 빈으로 등록되어(@Component) @PostConstruct가 동작한 것입니다.

따라서 데이터 등록을 원치 않을 경우 @PostConstruct를 제거해주세요
.
감사합니다.

감사합니다!

개념을 잘 모르고 사용했네요