由于在开发编码阶段会出现大量的空指针问题,为了减少处理空指针逻辑代码的冗余,在数据库设计阶段会给予表中字段的默认值。日期默认值也是如此,往往也可以设置默认值为
0000-00-00 00:00:00
,如下:
报错:
由于MySQL默认设置中不支持日期datetime格式下的
0000-00-00 00:00:00
,而在创建表的时候会报出如下错误:1067 - Invalid default value for 'login_time'
(“登录时间”的默认值无效。)
问题解决:
这个问题就出在了MySQL的配置中,因为MySQL5.7不允许datetime类型设置为
0000-00-00 00:00:00
我们可以查询MySQL的配置数据库:sql_mode
select @@sql