[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";
相关推荐
Bdygsl9 分钟前
MySQL(1)—— 基本概念和操作
数据库·mysql
身如柳絮随风扬19 分钟前
什么是左匹配规则?
数据库·sql·mysql
xinhuanjieyi26 分钟前
ruoyimate导入sql\antflow\bpm_init_db.sql报错
android·数据库·sql
哈__36 分钟前
从内核阻断 SQL 注入:金仓 KingbaseES SQL 防火墙技术解析与实践
数据库·sql
jiankeljx41 分钟前
mysql之如何获知版本
数据库·mysql
小李来了!1 小时前
数据库DDL、DML、DQL、DCL详解
数据库·mysql
柏箱2 小时前
双引号与括号的博弈:sqli-labs第四关注入实战(图文结合详解)
sql·网络空间安全
我科绝伦(Huanhuan Zhou)2 小时前
【生产案例】MySQL InnoDB 数据损坏崩溃修复
数据库·mysql·adb
海棠蚀omo3 小时前
从零敲开 MySQL 的大门:库与表的基础操作实战(保姆级入门指南)
数据库·mysql
Java水解3 小时前
SQL 核心概念:JOIN 和 UNION 到底有什么区别?
后端·sql