Value '0000-00-00' can not be represented as java.sql.Date解决办法
2024-09-05 13:39:06
java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp
问题描述, 在java应用程序中,数据表中有记录的time字段(属性为timestamp)其值为:“0000-00-00 00:00:00”
程序使用select 语句从中取数据时出现以下异常:
java.sql.SQLException:Value '0000-00-00' can not be represented as java.sql.Date
这是因为 “0000-00-00 00:00:00”在mysql中是作为一个特殊值存在的,但是在Java中, java.sql.Date 会被视为 不合法的值,被JVM认为格式不正确。
解决办法:
在jdbc的url加上 zeroDateTimeBehavior参数:
datasource.url=jdbc:mysql://localhost:3306/pe?useUnicode=true&characterEncoding=gbk&zeroDateTimeBehavior=convertToNull
对于值为0000-00-00 00:00:00(默认值)的纪录,根据不同的配置,会返回不同的结果:
不配置:默认返回异常
zeroDateTimeBehavior=round 0001-01-01 00:00:00.0
zeroDateTimeBehavior=convertToNull null
最新文章
- maven中央仓库访问速度太慢的解决办法
- Swift 1.0: missing argument label 'xxx' in call
- BZOJ 2427 &; 分块裸题
- 今天学习到的关于mysql数据库的linux命令
- JavaWeb学习记录(二)——防盗链技术
- 【spring 4】AOP:动态代理
- 扩展User增加部门字段
- Clone PDB from same CDB
- UITableView添加静态背景.
- bzoj 1602 [Usaco2008 Oct]牧场行走(LCA模板)
- 状压dp-poj-1170-Shopping Offers
- Entity Framework Code First实现乐观并发
- php读取excel文档内容(转载)
- vue2.x利用脚手架快速构建项目并引入bootstrap、jquery
- SAP HUM 事务代码HUMO为整托做Scrap
- Java(20)file i/o
- laravel 常见问题
- Python实例之抓取网易云课堂搜索数据(post方式json型数据)并保存到数据库
- HTTP请求处理流程 MVC核心(MVC就是扩展了一个HttpModule)
- Git撤销&;回滚操作