[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";
相关推荐
阿巴~阿巴~4 分钟前
告别命令行:Navicat可视化操作数据库(附安装使用教程)
服务器·数据库·mysql·navicat·可视化操作数据库
zhangyifang_0098 分钟前
MySQL中实现“小计”与“合计”
数据库·mysql
么么...34 分钟前
在 Ubuntu 上安装 Docker 并部署 MySQL 容器
linux·运维·经验分享·笔记·mysql·ubuntu·docker
·云扬·1 小时前
Linux系统下MySQL服务器关键配置优化指南
linux·服务器·mysql
·云扬·1 小时前
MySQL分页查询优化:从基础到进阶实践
数据库·mysql·oracle
程序猿20232 小时前
索引的使用及设计规则
mysql
·云扬·2 小时前
MySQL Join关联查询:从算法原理到实战优化
数据库·mysql·算法
码农水水2 小时前
小红书Java面试被问:SQL语句的执行过程解析
数据库·sql
youngqqcn2 小时前
SQL中联表查询深入分析
数据库·sql
Java&Develop3 小时前
PL/SQL Developer可视化修改数据
数据库·sql