java.sql.SQLException: Value ‘0000-00-00 00:00:00’ can not be represented as java.sql.Timestamp

来源:互联网 发布:高速微型数据连接器 编辑:程序博客网 时间:2024/06/06 12:37

从别的项目得到一段mysql的建表语句,执行时报错:there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause。
结果是低版本的mysql只允许有一个字段把CURRENT_TIMESTAMP设为默认值。解决方法有两个:
1.升级mysql
2.只设置一个。
我选择了第二种,结果数据库中就出现了“0000-00-00 00:00:00”这种时间。而该值在java中被视为不合法。
解决方法:在jdbc的url加上 zeroDateTimeBehavior参数。
例:
原:jdbc.url=jdbc:mysql://127.0.0.1:3306/ssm
改:jdbc.url=jdbc:mysql://127.0.0.1:3306/ssm?zeroDateTimeBehavior=convertToNull

阅读全文
0 0