MySQL 5.7.4及更高版本 SQL error: SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value问题解决

MySQL 5.7.4及更高版本默认不允许使用'0000-00-00 00:00:00'这个特殊值,这是因为这个值不是一个有效的日期或时间。在MySQL 5.7.4之前的版本中,如果您将一个无效的日期或时间值插入到datetime类型的列中,MySQL会自动将它转换为'0000-00-00 00:00:00'。

如果您的MySQL版本低于5.7.4,它可能允许存储'0000-00-00 00:00:00'这个特殊值,但是这并不是推荐的做法。如果可能的话,您应该避免使用它,因为它可能会导致数据不一致或损坏。如果您不得不使用它,建议在MySQL连接中启用严格模式,以确保所有日期和时间值都符合MySQL支持的格式。

 

所以在代码里,如果没有值设置,那么应该传一个 null

否则,就应该设置一个有效的日期默认值

posted @ 2023-04-15 22:07  唯一客服系统开发笔记  阅读(209)  评论(0编辑  收藏  举报