Column 'create_time' cannot be null

来源:4-9 订单服务dao

慕粉3381765

2018-03-29

数据库表order_master按照建表语句创建,create_time字段设置了默认值,但测试save方法的时候,还是报错提示:Column 'create_time' cannot be null

http://img.mukewang.com/szimg/5abc56540001bf2109850148.jpg

写回答

4回答

GooTsung_jen

2018-05-17

数据库版本问题,在5.66(应该是这个版本,我用的是5.7)版本以上的mysql,更改my.cnf的

explicit_defaults_for_timestamp

为false,restart之后,就好了,还有楼上的“殇腥黯皓”,丫能解决就解决,不能解决就别打字刷存在感

3
2
GooTsung_jen
回复
殇腥黯皓
呵呵呵
2018-05-18
共2条回复

Herron___

2019-09-11

删除orderMaster的createTime和updateTime字段

或者在orderMaster上增加注解@DynamicInsert和@DynamicUpdate

这两个亲测都可行。应该是新创建的字段使得MySQL的自动充填失效了

0
0

Dty_祥子

2018-04-30

我也碰到相同的问题了

0
0

殇腥黯皓

2018-03-29

你只贴了这个错怎么知道你那里写错了,请仔细对照源码,按理来说设置了默认值就不会报错,你可以去确认一下在数据库添加一个数据是否会自动生成创建时间

0
2
天天就是学
回复
Dty_祥子
我的mysql是8.0.13你这个方法我可以使用,新增的时候时间没问题,修改的时候也是数据操作,但是没有注解就只能是全字段更新了,不过问题也解决了
2019-03-07
共2条回复

SpringCloud Finchley(M2+RELEASE+SR2)微服务实战

SpringCloud组件实现微服务,【已升级Finchley.Release】

5673 学习 · 2489 问题

查看课程