mysql异常 ### Cause: java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp

数据库出现这种问题的时候,有多种情况。

首先,看看被查询的数据是否正确,因为有时候查询的数据时自己制造的假数据,所以难免会出错。有些字段是默认数据类型为Timestamp,然后默认的时候就是0000-00-00 00:00:00,所以查询这条数据时是会出现上述错误的。要么就删掉这条数据,要么就把默认的0000-00-00 00:00:00改成正常的数据,比如2016-05-12 15:15:15。(我的就是这原因,在代码里面找了好久,都没有找到哪里出了问题。)

下面的方法没用过,不过感觉可行,建议先使用上面简单的方法。

还有方法就是网上说的别的方法,就是在数据库jdbcurl上加上参数:zeroDateTimeBehavior=convertToNull,这样:jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true

http://www.th7.cn/Program/java/201512/723242.shtml

还有就是改变数据库模式:http://www.itnose.net/detail/6471356.html