[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";
相关推荐
Yvonne爱编码6 分钟前
数据库---Day9 视图(附完整数据库脚本+练习题)
数据库·mysql·oracle
heimeiyingwang27 分钟前
【架构实战】Canal数据同步:MySQL数据变更实时捕获
数据库·mysql·架构
AI人工智能+电脑小能手31 分钟前
【大白话说Java面试题 第85题】【Mysql篇】第15题:MySQL 的事务中,幻读是怎么解决的?
java·开发语言·数据库·mysql·面试
yoothey37 分钟前
MySQL 索引小白面试详解
数据库·mysql
小陈的进阶之路1 小时前
MySQL 索引
数据库·mysql
IronMurphy1 小时前
MySQL拷打最后一讲!!!
mysql
無限進步D1 小时前
MySQL 子查询
数据库·mysql
骄马之死1 小时前
MyBatis SqlSession 与缓存机制详解
mysql·mybatis
之歆1 小时前
Day01_ES6+ 专业指南:从基础到实战的现代JavaScript开发(上)
javascript·mysql·es6
Yvonne爱编码1 小时前
数据库---Day10 索引
数据库·sql·mysql