[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";
相关推荐
gameboy03141 分钟前
从MySQL迁移到PostgreSQL的完整指南
数据库·mysql·postgresql
RDCJM2 小时前
mysql表添加索引
数据库·mysql
楼兰胡杨3 小时前
面试题|MySQL 的 3 层主键索引最多能支撑多少数据量
mysql·面试题
spring2997923 小时前
LangChain-08 Query SQL DB 通过GPT自动查询SQL
数据库·sql·langchain
l1t4 小时前
四种python工具包用SQL查询csv和parquet文件的方法比较
大数据·python·sql
V1ncent Chen4 小时前
SQL大师之路 10 连接基础
数据库·sql·mysql·数据分析
原来是猿4 小时前
MySQL【表的内外连接】
数据库·mysql
安当加密4 小时前
MySQL 防勒索终极防线:TDE 透明加密 + DBG 动态权限控制双重保护实战
数据库·mysql·adb
sevenlin4 小时前
MySQL数据库(SQL分类)
数据库·sql·mysql
czlczl200209254 小时前
Mysql log 杂知识
数据库·mysql