golang解决datetime为空字符保存失败的问题

背景:当我们提交一个工单,需要记录审核时间,刚提交的单据保存数据库的时候审核时间肯定会空。因为写的是一个通用方法,只要传一个对象实例就挨个属性匹配字段执行插入sql,又由于mysql升级了,不允许保存datetime为空字符串,插入就报错了,错误如下:

Incorrect datetime value: '' for column 'date' at row 1

解决方法
1.判断date字段是否为空字符,如果是拼接sql的时候就不处理date。
2.直接给个默认值。

model.Date = new(time.Time).Format("2006-01-02 15:04:05")

存到数据库的数据是

0001-01-01 00:00:00

简单记录一下。

你可能感兴趣的:(golang解决datetime为空字符保存失败的问题)