Datatruncation:Incorrectdatetimevalue时间⼊库错误
Data truncation: Incorrect datetime value时间⼊库错误
Eclipse报错信息:Data truncation: Incorrect datetime value: ‘’ for column ‘pdate’ at row 1
在开发⼀个⽹上商城时,实现保存商品的⽅法,⽆法往数据库商品表插⼊数据,报错信息显⽰插⼊的数据格式不对-- ‘pdate’
错误原因
1. java中Date类型默认是格林尼治时间,对应数据表使⽤的是datetime类型
2. 我们引⼊的mysql的jar包,数据库驱动mysql-connector-java封装了将java的Date类型的格林尼治时间转换为‘yyyy-MM-dd
error parse newHH:mm:ss’的功能。对应的数据表使⽤的是date类型
3. 当我们的MySQL版本和驱动mysql-connector-java的jar包版本⼀致才能够转换成功(我的mysql版本为5.6,驱动是5.1.7)解决⽅案
1. 更改数据库版本与jar包⼀致
2. 对pdate使⽤SimpleDateFormat进⾏转换,转换成和数据库⼀致的格式:yyyy-MM-dd hh:mm:ss
我们采⽤解决⽅案2,现展⽰修改前后的代码
修改前
// 将提交的数据添加到数据库中.
product.setPdate(new Date());
修改后
// 将提交的数据添加到数据库中.
SimpleDateFormat sf =new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String format = sf.format(new Date());
Date parse = sf.parse(format);
System.out.println("1:"+new Date());
System.out.println("2:"+parse);
product.setPdate(parse);
⼤功告成,希望有所帮助~
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论