데이터의 상태를 알 수 있는 status 컬럼을 선언하고 not null과 default 값까지 설정을 해주었었다
`status` VARCHAR(1) NOT NULL DEFAULT 'A' COMMENT 'A: Active(활성상태), D: Delete(삭제, 탈퇴한 상태), B: Black(블랙 유저)',
하지만 Column 'status' cannot be null 오류가 간간히 계속 나타났고 이를 해결하는 방법을 적으려 한다!
1. not null, default
이 상태였을 때 오류가 발생했었다
2. null로 변경
not null을 지운 후 다시 테이블을 만든 다음 데이터를 넣으면 default값이 들어갈 것이라고 생각하면서 작업을 했더니
A가 아니라 <null> 이라고 표시되었다
3. not null, default + @DynamicInsert
@DynamicInsert는 insert 시 null 인 필드 제외하고 insert를 해주는 것이다
BaseEntity가 아니라 이를 상속받은 각 엔티티에 모두 어노테이션을 추가하고 다시 작업을 해보니
status에 다시 A라는 값이 잘 저장된 것을 볼 수 있다!
728x90
반응형