无法将给定对象格式化为日期

时间:2017-03-13 15:16:54

标签: java sqlite netbeans-8

我想将产品插入表格中。为此我有一个Date字段,我使用Date Chooser Combo。为了添加该产品的日期,我编写了以下代码,

String sql = "INSERT INTO ProductInfo(Name,Price,Date,Image,Category) values(?,?,?,?,?) ";
            pst=conn.prepareStatement(sql);
            pst.execute();

            pst.setString(1, txt_name.getText());
            pst.setString(2, txt_price.getText());

            SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy");
            String addDate = dateFormat.format(txt_AddDate.getDateFormat());
            pst.setString(3, addDate);

但是这给了我"无法将给定对象格式化为日期"错误。我已经尝试了很多,但无法解决。有人帮我吗?

1 个答案:

答案 0 :(得分:0)

in

pst.setString(3, addDate);

您告诉您要在Date属性中使用String。

你应该把它改成

pst.setDate(3, addDate);

为什么不使用你拥有的日期呢? 为什么不呢?

pst.setDate(3, txt_AddDate.getDateFormat());

如果这不起作用,因为格式或简单,因为它没有返回日期,你仍然想使用SimpleDateFormat,你可以使用类似的东西:

pst.setDate(3, java.sql.Date.valueOf(addDate));