错误mysql 出现 "1067 - Invalid default value for 'UPDATE_TIME' " 错误提示的解决办法
Posted 天道酬勤
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误mysql 出现 "1067 - Invalid default value for 'UPDATE_TIME' " 错误提示的解决办法相关的知识,希望对你有一定的参考价值。
今天工作中遇到修改表结构的时候出现错误
Invalid default value for \'UPDATE_TIME 问题原因是因为db 表中update_time的默认时间写成了 \'0000-00-00 00:00:00\'
`update_time` timestamp NOT NULL DEFAULT \'0000-00-00 00:00:00\' ON UPDATE CURRENT_TIMESTAMP COMMENT \'更新时间\',
因为timestamp类型取值范围:1970-01-01 00:00:00 到 2037-12-31 23:59:59,
所以必须得把字段UPDATE_TIME 的默认值修改成:1970-01-01 00:00:00 到 2037-12-31 23:59:59 之间的值,
发现 默认值必须在1970-01-01 10:00:00 以后才修改成功,不知道什么原因!
解决方式
1:sql解决
alter table tmp_wrh_1 alter column update_time drop default; alter table tmp_wrh_1 alter column UPDATE_TIME set default \'1970-01-01 10:00:00\';
sql 含义
alter table 表名 alter column 字段名 drop default; (若本身存在默认值,则先删除) alter table 表名 alter column 字段名 set default 默认值;(若本身不存在则可以直接设定)
2:利用navicate 解决
右键表 -> 设计表
将默认值改成\'1970-01-01 10:00:00\'
参考地址:https://blog.csdn.net/wrh_csdn/article/details/82223228
以上是关于错误mysql 出现 "1067 - Invalid default value for 'UPDATE_TIME' " 错误提示的解决办法的主要内容,如果未能解决你的问题,请参考以下文章