[2024-03-09 19:55:01] [42000][1067] Invalid default value for ‘create_time‘【报错】

这个错误可能是因为你的 MySQL 数据库版本不支持 CURRENT_TIMESTAMP 作为默认值。在一些早期版本中,MySQL 对 TIMESTAMP 类型字段的默认值设置有限制,只允许使用特定的常量值(如 0000-00-00 00:00:00CURRENT_TIMESTAMP())。如果你的 MySQL 版本太旧,则可能无法识别 CURRENT_TIMESTAMP

要解决这个问题,你可以尝试以下几种方法之一:

  1. 升级你的 MySQL 版本到 5.6.5 或更高版本,这些版本已经支持 CURRENT_TIMESTAMP 作为 TIMESTAMP 字段的默认值。
  2. create_time 的默认值设置为 0000-00-00 00:00:00,这是 MySQL 中 TIMESTAMP 类型的默认值之一,但是这样会使得这个字段无法记录创建时间。(这样不能自动添加创新日期)

3.设置 sql_mode(如果这个不能解决,只能升级了)

复制代码
set sql_mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";
相关推荐
编程小Y6 小时前
如何优化MySQL的查询性能?
数据库·mysql
贺今宵6 小时前
安装better-sqlite3报错electron-vite
javascript·sql·sqlite·sqlite3
山峰哥9 小时前
SQL调优核心战法——索引失效场景与Explain深度解析
大数据·汇编·数据库·sql·编辑器·深度优先
编程小Y10 小时前
MySQL原理
数据库·mysql
小石头 1008610 小时前
MySQL 视图:把复杂变简单的“虚拟化”艺术
数据库·mysql
DB虚空行者11 小时前
MySQL误删/批量更新数据恢复实战:基于Flashback工具的完整方案
数据库·mysql
九皇叔叔11 小时前
MySQL Next-Key Lock 锁表事故全拆解(从现象到根治)
数据库·mysql
短剑重铸之日12 小时前
7天读懂MySQL|Day 4:锁与并发控制
数据库·mysql·架构
Java水解12 小时前
MySQL定时任务详解 - Event Scheduler 事件调度器从基础到实战
后端·mysql
程序 代码狂人13 小时前
开窗函数 集合运算 行列转换
sql