Golang Gorm时间维度数据更新问题

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配置,

posted @   自己有自己的调调、  阅读(794)  评论(0编辑  收藏  举报
编辑推荐:
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
阅读排行:
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· DeepSeek火爆全网,官网宕机?本地部署一个随便玩「LLM探索」
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 上周热点回顾(1.20-1.26)
· 【译】.NET 升级助手现在支持升级到集中式包管理
历史上的今天:
2020-07-12 【9】Flask 脚本-MySQL数据库迁移
2020-07-12 【8】Flask 数据库
2020-07-12 【7】Flask 模板
点击右上角即可分享
微信分享提示