您当前的位置: 首页 > 数据库教程 > MySQL教程 > Cannot convert value '0000-00-00 00:00:00' from column 1 to TIMESTAMP

Cannot convert value '0000-00-00 00:00:00' from column 1 to TIMESTAMP

作者:不详 来源:网络 发布时间: 2011-12-21 14:27 点击:
在Mysql数据库中使用DATETIME类型来存储时间,使用JDBC中读取这个字段的时候,应该使用ResultSet.getTimestamp(),这样会得到一个java.sql.Timestamp类型的数据。在这里既不能使用ResultSet.getDate(),也不能使用ResultSet.getTime(),因为前者不包括time数据,后者不

Cannot convert value '0000-00-00 00:00:00' from column 1 to TIMESTAMP

  在Mysql数据库中使用DATETIME类型来存储时间,使用JDBC中读取这个字段的时候,应该使用ResultSet.getTimestamp(),这样会得到一个java.sql.Timestamp类型的数据。在这里既不能使用ResultSet.getDate(),也不能使用ResultSet.getTime(),因为前者不包括time数据,后者不包括date数据。
  
  但是在使用ResultSet.getTimestamp()时也不是完全安全的,例如,当数据库中的TIMESTAMP类型的字段值为'0000-00-0000:00:00'时,使用此方法进行读取,会抛出异常:Cannot convert value'0000-00-0000:00:00' from column1to TIMESTAMP,这是因为JDBC不能将'0000-00-0000:00:00'转化为一个为一个java.sql.Timestamp,在Java中,想创建一个java.util.Date,使其值为'0000-00-00'也是不可能的,最古老的日期应该是'0001-01-0100:00:00'。
  
  解决方案1.String url="jdbc:mysql://localhost:3306/test?relaxAutoCommit=true&zeroDateTimeBehavior=convertToNull";

分享到:
本文"Cannot convert value '0000-00-00 00:00:00' from column 1 to TIMESTAMP"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(2)
100%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4