今天遇到个问题 ,让我找半天错!!!!最后发现原来是版本问题 ,当然 换老版本的 mysql 这个就不是问题了
记得 以前可以直接用date类型的数据 存到sql里面
order.setOrdertime(new Date());
public void addOrderItem(Order order) throws SQLException { //相orderItem表插入数据 QueryRunner runner = new QueryRunner(DataSourceUtils.getDataSource()); String sql = "insert into orderItem values(?)"; runner.update(sql,order.getOrdertime()); }
但是今天一直报错Incorrect datetime value: '' for column 'createTime' at row 1
数据错误.......查了很多资料
现在把解决办法贴出来
import java.util.Date; import java.sql.Timestamp; import java.text.SimpleDateFormat; Date date=new Date(); //转换时间格式 SimpleDateFormat simpleDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); order.setOrdertime(Timestamp.valueOf(simpleDate.format(date)));
完美解决!!!!!!!!!!!!! Date数据可以直接存到 sql的 dateTime里面了
问题分析: 没什么 版本问题.....用的新版本的 mysql 重新定义了DateTime类型的sql