mysql的5.7以上版本不支持零日期格式,提示错误Incorrect datetime value: '0000-00-00' for column ...
方式1:
修改struct结构体
// 1、time.time日期类型修改为*time.time
// 设置数据库时间为Null
方式2:
mysql 5.7版本默认的sql配置是:sql_mode="ONLY_FULL_GROUP_BY",这个配置严格执行了"SQL92标准"。
show variables like 'sql_mode'
// 删除NO_ZERO_DATA参数
set global sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENgINE_SUBSTITUTION'
Go日常开发中以上方式不推荐使用,重新定义struct结构体不含更新时间或创建时间维度,不会出现上述ERROR Incorrect datetime value: '0000-00-00' for column ...
注:从MySQL 5.6升级5.7过程中,为了兼容5.6中语法,多数会修改sql_mode配置,