MariaDB/SQL

[에러] Incorrect datetime value: ''

알 수 없는 사용자 2017. 8. 2. 16:22
[테스트 환경] 
OS : CentOS7 64bit 
DB : MariaDB 10.1.12 

1. Error 내용 
 - SELECT INSERT 쿼리에서 다음과 같은 에러 발생
Incorrect datetime value: ''
[특이 사항] 
- 기존에 에러 없이 실행되던 쿼리가 어느 순간부터 실행이 안됨. 
- 동일한 환경인 다른 서버에서 실행했을 때 정상적으로 실행 됨. 

2. 해결 방안 
 - 쿼리 내의 암묵적인 형변환이 발생하는지 확인 
 - VARCHAR 타입을 DATE 타입으로 암묵적인 형 변환을 발생시키는데 여기서 ''을 리턴하는 것으로 예상 
 - 명시적으로 형변환을 할 수 있도록 쿼리 변경 

[변경 전]
AND [VARCHAR 타입인 컬럼] <= CURRENT_TIMESTAMP()
[변경 후]
AND [VARCHAR 타입인 컬럼] <= DATE_FORMAT(CURRENT_TIMESTAMP(),'%Y%m%d')