반응형
MySQL 5.7.26
고인물 레거시 시스템을 새로 만드는 중이다.
MySQL에서 datetime 컬럼을 추가 후 테스트케이스 작성 중 다음과 같은 오류가 떴다.
'0000-00-00 00:00:00' can not be represented as java.sql.Timestamp error
해당 컬럼 값은 NULL인데 왜 '0000-00-00 00:00:00' 라고 할까?
처음에 Not Null에 디폴트로 타임스탬프를 줘서 만들었다가 Nullable, 디폴트를 삭제한 것이 이유였다.
검색을 해보니 접속 정보에서 zeroDateTimeBehavior=convertToNull
를 추가하라고 하는데 컬럼정보를 수정하는 것이 더 옳은 방법이라고 생각한다. 그냥 깔꼼하게 컬럼을 지우고 다시 만드니까 해결되었다. 데이터가 들어있었다면 ALTER 컬럼으로 디폴트 NULL 하면 될 것 같다.
반응형