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’;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM