[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";
相关推荐
某不知名網友1 小时前
MySQL数据表详解|创建、查看、修改、删除实战教程
数据库·mysql
抓蛙师10 小时前
多租户 tenant_id SQL 注入漏洞分析与应急响应报告
数据库·sql
何以解忧,唯有..13 小时前
数据库索引失效的常见情况与优化策略
数据库·sql·oracle
01_ice14 小时前
MySQL库和表的操作
数据库·mysql
这个DBA有点耶16 小时前
从库延迟的“二次放大”效应:一次大事务,拖垮整个读写分离
数据库·mysql·架构
一个有温度的技术博主17 小时前
MySQL 三大日志协同机制:redo log、undo log 与 binlog 的联合运作
数据库·mysql·oracle
张洛闻Eren19 小时前
MySQL 管理复制拓扑【MySQL第四课】
linux·运维·数据库·mysql
小王C语言21 小时前
MySQL 内置函数:日期函数、字符串函数、数学函数、其他函数
数据库·mysql
渣渣盟21 小时前
误删数据之后:MySQL、PostgreSQL、Oracle三库紧急恢复完全实操手册
mysql·postgresql·oracle