MySQL 踩坑记:mysql timeStamp/datetime默认值0000-00-00 00:00:00 报错

报错现象:

从mysql5.5数据库导出的数据结构放到mysql5.7.10 报错
create_time timestamp NOT NULL DEFAULT ‘0000-00-00 00:00:00’ 
则会出现以下的异常: 
Invalid default value for ‘create_time’

报错原因以及解决办法:

这个问题和mysql中sql_mode有关系,我们可以采用两种方法来查看它的值

http://www.cnblogs.com/wang666/p/9186559.html

不重启mysql办法:

先执行一下下面的语句

set sql_mode=(select replace(@@sql_mode,'NO_ZERO_IN_DATE,NO_ZERO_DATE',''));

 然后在重新直接执行新增

ALTER TABLE  数据库表名  ADD COLUMN `end_time ` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '更新时间'  
AFTER  ‘start_time’;

猜你喜欢

转载自www.cnblogs.com/xiaobing-R/p/12978795.html