MySQL 错误码: 1067Invalid default value for ‘xxx‘问题解决
声明,此文为转载内容,原作者地址为:https://blog.csdn.net/qq_38974638/article/details/122300538
1.问题描述:
错误码: 1067
Invalid default value for 'gmt_create'
2.问题分析:
1、建表语句里面使用CURRENT_TIMESTAMP作为DATETIME的默认值,在5.6.5之后的版本才能使用CURRENT_TIMESTAMP作为DATETIME的默认值,但是当前MySQL数据库的版本为5.5,CURRENT_TIMESTAMP只能作为TIMESTAMP的默认值。
CREATE TABLE `config_info` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`gmt_create` datetime not NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`gmt_modified` datetime not NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_configinfo_datagrouptenant` (`data_id`,`group_id`,`tenant_id`)
) ;
3.问题解决
1)将MySQL数据库版本升级至5.6.5以上即可。(我直接升级将mysql到8.0版本,此问题得到解决)
2)将datetime类型改为timestamp类型即可。
3)去掉DEFAULT CURRENT_TIMESTAMP即可。
本文作者:远道而重任
本文链接:https://www.cnblogs.com/rong-xu-drum/p/16805109.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
springCloud
, mysql
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步