특정 column에서 Enum 값을 사용하는데 Enum에 값을 추가해도 Hibernate가 Check Constraint를 업데이트 안 해주는 문제가 있다.
DDL을 업데이트하는 것도 추가해줘야 한다.
hiberante.ddl-auto: update
로 해 놓으면 DDL이 업데이트되지 않는다.
코드 복사
-- V3__Update_enum_constraint.sql
ALTER TABLE table DROP CONSTRAINT table_value_check;
ALTER TABLE table ADD CONSTRAINT table_value_check CHECK (
value::text = ANY(
ARRAY[
'A',
'B', -- 새로 추가된 값
-- 기타 허용된 값들...
]::text[]
)
);
https://github.com/spring-projects/spring-data-jpa/issues/3299