
Java 程序在从数据库结果集中读取日期字段时,遇到了一个零值日期(比如 0000-00-00 00:00:00),而当前 JDBC 设置禁止了这种零日期值。
原因
-
MySQL 中允许日期字段存储
0000-00-00 00:00:00(零日期) -
但 Java 的 JDBC 驱动默认会认为这是一个无效的日期,抛出异常
解决办法
(1)修改数据库中0日期的数据,更新为null或者其他日期,不要用0日期,确认是人工更新的还是bug产生了这种数据
**(2)修改数据库jdbc连接参数,**jdbc:mysql://你的地址:3306/数据库名?zeroDateTimeBehavior=convertToNull