[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";
相关推荐
vigor51218 分钟前
MySQL通过Mango实现分库分表
android·数据库·mysql
ClouGence41 分钟前
SQL Server CDC 如何降低主库压力?Always On 备库读取实践
数据库·后端·sql·sqlserver
KASH_SHADOW2 小时前
8-Mysql的安装与配置
数据库·mysql·adb
吴声子夜歌4 小时前
SQL进阶——自连接
数据库·sql
云贝教育-郑老师4 小时前
TDSQL(MySQL版)分布式事务实现机制深度解析:从两阶段提交到全局一致性读
数据库·sql
_陈陆亮5 小时前
MySQL 运维高频 SQL:一条语句快速定位长事务与锁阻塞
运维·sql·mysql
Full Stack Developme5 小时前
正则表达式设计及工作原理
数据库·mysql·正则表达式
谢慧琼5 小时前
免费版收银系统支持多账号同时登录吗?
mysql
rebibabo6 小时前
Java基础(24) | MySQL 原理与优化:事务、存储引擎、索引与锁
mysql··存储引擎·explain·视图·最左前缀·事务acid
渣渣灰飞8 小时前
MySQL 系统学习 第二阶段 SQL 第一章:DDL(Data Definition Language)
数据库·学习·mysql