Super Kawaii Cute Cat Kaoani [error][mysql/mariadb] Error executing DDL "alter table .. drop foreign key if exists...
728x90
SMALL

✅ ddl-auth: create 

➡️ 테이블을 drop 하고 create 하려고 해보면 이런 에러를 본 적이 있을 것이다.

 

fk 때문에 즉, 연관관계 때문에 발생한 error

자식 테이블들부터 지워나가야 하는데 아무렇게 테이블을 지우려하다보니 에러가 발생한다. 

ex) user를 삭제하려면 likes 때문에 삭제를 못 한다. ➡️ likes 삭제 후 user 삭제 가능

 

💡 참고

spring:
  jpa:
    hibernate:
      ddl-auto:
  • create: 기존테이블을 삭제 후 다시 생성한다.(닫을 때 삭제하지는 않는다)
  • create-drop: create와 비슷하지만, 종료시점에 테이블을 삭제한다.
  • update: 삭제하지 않고 계속 업데이트한다.
  • validate: 엔티티와 테이블이 정상 매핑되었는지만 확인한다
  • none: 어떠한 변화도 주지 않는다. (mysql에서 default)

 

✔️ 결론 = 자식 테이블부터 삭제하자! 

(혹시 예약어를 사용하진 않았는 지 살펴볼 필요도 있다.)

 

 

 

 

 

728x90
LIST

'CS > Database' 카테고리의 다른 글

soft delete 와 hard delete 란?  (0) 2024.02.04

BELATED ARTICLES

more