”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 为什么我在 MySQL 中收到“\'create_date\'时间戳字段的默认值无效”错误?

为什么我在 MySQL 中收到“\'create_date\'时间戳字段的默认值无效”错误?

发布于2024-11-09
浏览:790

Why Am I Getting \

“create_date”时间戳字段的默认值无效

创建带有时间戳列的表并指定默认值“0000-”时00-00 00:00:00',可能会出现错误,指示“'create_date'的默认值无效”。这个错误是由 MySQL 的 SQL 模式 - NO_ZERO_DATE 引起的。

根据 MySQL 参考手册,NO_ZERO_DATE 阻止在严格模式下插入 '0000-00-00' 作为有效日期。在本例中,“create_date”列被定义为时间戳并分配了默认值“0000-00-00 00:00:00”。但是,SQL 模式 - NO_ZERO_DATE 禁止此类值。

要解决此错误,请考虑以下选项:

  • 在创建之前使用 SET sql_mode="" 命令禁用 SQL 模式 - NO_ZERO_DATE表。
  • 为“create_date”列使用非“0000-00-00 00:00:00”的不同默认值,例如“CURRENT_TIMESTAMP”。
  • 插入零使用 IGNORE 选项的日期,该选项允许插入此类值并带有警告而不是错误。
最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3