mysql 导入数据库,报出了sql错误。
[Err] 1067 - Invalid default value for 'addtime'
[Err] /*
CREATE TABLE `ent_xxx` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(20) NOT NULL DEFAULT '',
`password` char(32) NOT NULL DEFAULT '',
`phone` varchar(11) NOT NULL DEFAULT '',
`token` varchar(100) NOT NULL DEFAULT '',
`time_out` int(10) unsigned NOT NULL DEFAULT '0',
`image` varchar(200) NOT NULL DEFAULT '',
`sex` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '性别0男 1女',
`signature` varchar(200) NOT NULL DEFAULT '' COMMENT '个性签名',
`addtime` datetime NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '添加时间',
`status` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `phone` (&#

在升级到MySQL 5.7后,遇到导入数据时关于'addtime'字段的datetime默认值错误。问题源于sql_mode中的NO_ZERO_IN_DATE和NO_ZERO_DATE参数限制,这两个参数不允许日期中存在0值。在严格模式下,即使使用IGNORE选项,'0000-00-00'日期也不合法,但非严格模式下会生成警告。解决方案包括临时或永久修改sql_mode配置。
最低0.47元/天 解锁文章
5840

被折叠的 条评论
为什么被折叠?



