728x90
반응형
새로운 프로젝트가 이전 버전의 프로젝트 DB에서도 돌아가는지 확인하는 작업 중 아래 오류 발생
ERROR 1067 (42000): Invalid default value for 'SOME_COLUMN'
위 SOME_COLUMN은 date 타입의 컬럼
MySQL에서 date 타입 컬럼의 default value가 0000-00-00으로 할 수 없어서 생기는 오류
(0000-00-00으로 .sql 파일에 DDL 문이 만들어져 있던 것은 해당 값이 가능한 구버전이었거나, 가능하도록 default 값을 변경해준 것으로 추정)
해당 에러는 0000-00-00 과 같은 날짜는 현실에서 존재하지 않는 date
이와 같이 실제로 존재 하지 않는 date를 값으로 입력하는 것을 방지하고 있음
설정을 위와 같이 바꿀 수도 있겠으나, 관리나 JavaScript와 같은 언어와의 호환을 생각하면 0000-00-00과 같이 존재하지 않는 날짜를 default로 설정하지 않는 것이 권장되는 것으로 판단
# No_ZERO_DATE
# No_ZERO_IN_DATE
참고자료
728x90
반응형