Column 'create_time' cannot be null

各级索引如下:

问题产生

sql文件

`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',

可是在springboot下为其他非空字段添加完记录后,执行测试类,结果出现了创建时间和修改时间不能为空的情况。

尝试解决

  1. 修改sql文件,将两个字段都修改为允许空。
    结果:可以插入新纪录,但是这两个字段的值均为null
  2. 将该表对应的实体类中的这两个属性注释掉
    结果 :可以插入,但是字段值还是为null

最终解决方案

在MySQL的my.ini文件中的[mysqld]下添加

explicit_defaults_for_timestamp=OFF

然后重启MySQL数据库 如下图所示: alt
之后再重新执行测试类,发现可以顺利插入。