博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Value '0000-00-00' can not be represented as java.sql.Date错误修改
阅读量:4068 次
发布时间:2019-05-25

本文共 674 字,大约阅读时间需要 2 分钟。

java.sql.SQLException:Value '0000-00-00' can not be represented as java.sql.Date
 
问题探究:
   数据表中有记录的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.sql.Date 将其视为 不合法的值 格式不正确
 
问题处理办法:
   网上办法:
       给jdbc   url加上   zeroDateTimeBehavior参数:
       datasource.url=jdbc:mysql://localhost:3306/pe?         useUnicode=true&characterEncoding=gbk&zeroDateTimeBehavior=convertToNull
 
不知道为什么我这么做的时候hibernate的配置文件将无法被解析,所以我采用下面的方法处理了此问题
      其一:将time的默认值设为当前时间,当然也可以是其他事件反正比0大,我是这么想的,你使用此系统时间一般都在当前开发时间之后
      其二:创建数据表时插入一个预设值~~~,建议使用数据库时尽可能的都设置预设置,可以减少很多不必要的麻烦,特别是对初学者而言
 
   

转载地址:http://gloji.baihongyu.com/

你可能感兴趣的文章
PostgreSQL查询优化器详解之逻辑优化篇
查看>>
STM32中assert_param的使用
查看>>
C语言中的 (void*)0 与 (void)0
查看>>
vu 是什么
查看>>
io口的作用
查看>>
IO口的作用
查看>>
UIView的使用setNeedsDisplay
查看>>
归档与解归档
查看>>
Window
查看>>
为什么button在设置标题时要用一个方法,而不像lable一样直接用一个属性
查看>>
字符串的截取
查看>>
2. Add Two Numbers
查看>>
17. Letter Combinations of a Phone Number (DFS, String)
查看>>
93. Restore IP Addresses (DFS, String)
查看>>
19. Remove Nth Node From End of List (双指针)
查看>>
49. Group Anagrams (String, Map)
查看>>
139. Word Break (DP)
查看>>
23. Merge k Sorted Lists (Divide and conquer, Linked List) 以及java匿名内部类
查看>>
Tensorflow入门资料
查看>>
剑指_用两个栈实现队列
查看>>