SQL error: SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value问题解决

SQL error: SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value

针对如下SQL:'0000-00-00 00:00:00' for column 'begin_time' at row 1   begin_time的类型为TIMESTAMP

 

解决方案:

1)根本解决:修改逻辑,'0000-00-00 00:00:00'不是合法的TIMESTAMP值,可以设置为null或者'1970-01-01 08:00:00'

2)临时方案,修改sql_mode

先查询sql_mode配置,select @@global.sql_mode,发现如下配置NO_ZERO_IN_DATE,NO_ZERO_DATE

移除这2个配置后,重新设置set @@global.sql_mode='xxxx'

备注:设置完全局sql_mode后重启会失效,应该把这个配置在my.cnf设置,并在适合的时间重启mysql

你可能感兴趣的:(Mysql,MYSQL,Incorrect,datetime,value,SQLSTATE[22007])