해결된 질문
작성
·
356
7
강사님 강의 잘 듣고 있습니다.
제목에 적힌대로 ddl.auto 값을 create로 설정했는데도 매번 main을 실행할 때 "CommandAcceptanceException" 이 발생합니다.
로그를 살펴보면 Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Cannot drop "ACCOUNT" because "FKNNYFLHE0WA6DSBPQ4OI831LOT" depends on it; SQL statement:
이런식으로 나오는데요, 한마디로 ddl전략이 create시 선 테이블 drop, 후 create를 하는데 이 drop의 과정에서 pk fk 관계가 얽혀서 나중에 drop 해야만 하는게 있는거 같은데요, 맞나요?
이럴경우도 깔끔하게 create 할 수는 없을까요?
감사합니다.
답변 4
8
메이븐은 하이버네이트 버전항목에 5.4.14.Final로 설정하면 됩니다^^!
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.4.14.Final</version>
</dependency>
3
h2 데이터베이스를 1.4.200으로 유지하면서 문제를 해결할 수 있는 하이버네이트 패치가 드디어 나왔습니다.
build.gradle 파일에 다음 한줄을 추가해주시면 됩니다.
ext["hibernate.version"] = "5.4.14.Final"
감사합니다^^
1
1
https://www.inflearn.com/course/ORM-JPA-Basic/lecture/21707
의 제일 첫번째 질문하신분이 자문자답 해주셨었네요! 이대로 하니 잘 됩니다.