java.sql.SQLException: Value ”0000-00-00 00:00:00“ can not be represented as java.sql.Timestamp
java.sql.SQLException: Value ‘0000-00-00 00:00:00’ can not be represented as java.sql.Timestamp
分析:
今天在项目中涉及到需要查询表中数据的时候,因为表中含有"CREATE_TIME字段",导致在select语句查询时报错。
原因:
1.首先,在创建表的时候,字段CREATE_TIME"格式为:
‘CREATE_TIME’ timestamp NOT NULL DEFAULT ‘0000-00-00 00:00:00’
2.因为字段默认值设置,导致在新增数据的时候,不指定创建时间,create_time均为"0000-00-00 00:00:00"了
3.而select语句,将此查询结果,内含create_time字段值"0000-00-00 00:00:00",再将其转换为Java的Timestamp类型的时候出错了。
4.根本原因是:
Timestamp t = new Timestamp(System.currentTimeMillis())
System.out.println(t);
2020-06-29 16:57:43.663
可以明显的看出,java中的时间是从格林威治时间 1970年01月01日00时00分00秒开始的,这就导致"0000-00-00 00:00:00"Java根本无法表示此时间
解决
1.大家普遍方法:在.xml中url路径中添加
<jdbcConnection userId="root" password="xxx" driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://192.168.145.130:3306/test?zeroDateTimeBehavior=convertToNull"/>
或者
?zeroDateTimeBehavior=round
- 2.第一种方式试了,没用。然后,将数据库表字段"CREATE_TIME"改成
alter table 表名 modify CREATE_TIME timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间';
java.sql.SQLException: Value ”0000-00-00 00:00:00“ can not be represented as java.sql.Timestamp相关推荐
- java.sql.SQLException: The server time zone value ‘Öйú±ê׼ʱ¼ 解决方案
java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ 解决方案 参考文章: (1)java.sql.SQLException: ...
- java.sql.SQLException: Lock wait timeout exceeded --转
org.springframework.dao.CannotAcquireLockException 的解决> 直接上 bug 的详细信息: 2012-03-12 15:20:31 XmlBea ...
- 【报错笔记】程序报错:Cause: java.sql.SQLException: Invalid value for getInt() - ‘4ab72edc-c02f-423f-ae9e-18c30
程序报错:Cause: java.sql.SQLException: Invalid value for getInt() - '4ab72edc-c02f-423f-ae9e-18c306e2cda ...
- sqlerror.java 1074_java.sql.SQLException: Before start of result set异常
异常: java.sql.SQLException: Before start of result set at com.mysql.jdbc.SQLError.createSQLException( ...
- java.sql.SQLException: Can not issue empty query.
1.错误叙述性说明 java.sql.SQLException: Can not issue empty query.at com.mysql.jdbc.SQLError.createSQLExcep ...
- java中的无效的列类型_java.sql.SQLException: 无效的列类型: 1111
在使用Mybaits Plus更新数据时报错: 2018-09-05 10:55:40.712 DEBUG 15828 --- [nio-8110-exec-1] c.c.x.s.m.A.update ...
- java.sql.SQLException: Invalid utf8 character string: 'ACED00'
使用JPA+Hibernate执行原生sql查询时报了异常,一开始以为是数据库编码的问题,尝试了几种方式都没有解决,静下来想了想,原来是查询的sql中有status in (?1),而传入的参数值是枚 ...
- mybatis报错:java.sql.SQLException: 无效的列类型: 1111
java.sql.SQLException: 无效的列类型: 1111 at oracle.jdbc.driver.OracleStatement.getInternalType(Oracle ...
- java.sql.SQLException: 无效的列类型: 1111 (jdbcType相关)
转自:http://blog.csdn.net/stronglyh/article/details/45369611 mybatis报错:java.sql.SQLException: 无效的列类型: ...
- mysql5.5异常: java.sql.SQLException: Packet for query is too large (1055975 > 1048576).
mysql5.5异常: java.sql.SQLException: Packet for query is too large (1055975 > 1048576). mysql5.5异常: ...
最新文章
- python【Multiprocessing and threading】深入浅出多进程和多线程
- Ubuntu16.04安装Mininet
- 人脸检测与识别年度进展概述
- 凭什么,Netty能成为最流行的NIO框架?
- PHP钥匙导航源码-社区导航双端自适应Typecho模板
- java 类型转换原理_9.java数据类型的转换
- 服务器开机信号,机柜服务器BMC开关机控制系统及方法
- 软考信息安全工程师知识总结
- <C++>一篇文章搞懂类和对象中常函数和常对象的实质以及避免空指针访问的小妙招
- 5G 第五代移动通信系统你知多少?
- 30天自制操作系统(day10)
- 延续精彩分享,感受技术力量 | 开发者说·DTalk 鉴赏
- Word2Vec之Skip-Gram与CBOW模型
- 金融×元宇宙:虚实交融共进下的金融体系
- 【HDOJ】4043 FXTZ II
- NumPy 基础教程
- android+照片合成,图片合成修图神器手机版
- ptx760功能图解_摩托罗拉PTX760对讲机
- 实现JS脏话筛选替换的几种途径
- 如何判断代理IP的匿名程度?