JPA Hibernate ddl 자동생성 옵션과 초기화 / 테이블 생성 오류 Error executing DDL

박희중·2022년 3월 5일
1

spring

목록 보기
2/4

JPA / Hibernate ddl auto 옵션

spring.jpa.hibernate.ddl-auto 옵션 종류

  • create: 시작시점에 DROP을 실행하고 테이블 생성 (DROP + CREATE)
  • create-drop: 시작시점에 DROP을 실행하고 테이블 생성하며, 종료시점에 테이블 DROP
  • update: 변경된 스키마 적용
  • validate: 변경된 스키마가 존재하면 변경사항 출력후 종료
  • none: 아무것도 실행하지 않음


주의점

  • 운영 단계에서는 절대 create, create-drop, update 사용 금지
  • 개발 초기 단계는 create 또는 update
  • 테스트 서버는 update 또는 validate
  • 운영 단계는 validate 또는 none


Error executing DDL "alter table goal drop foreign key

프로젝트 설정(application.properties)에서는 create-drop으로 설정 되어있습니다.

위의 오류는 실행시 table 모두를 drop시키는데 alter할 table을 찾지 못하여 나타나는 에러입니다.
초기화 옵션을 update로 변경하면 에러가 해결되는 모습입니다.



기타 Error executing DDL

예를 들어 "like"처럼 데이터베이스 예약어와 같은 이름으로 변수명을 지으면 쿼리문에서 오류가 뜰 수 있습니다. 따라서 "likes"와 같이 예약어와는 다른 이름으로 지어야합니다

profile
백엔드 엔지니어 박희중입니다.

0개의 댓글