获取java sql时间并将其插入表中

时间:2014-12-14 15:20:12

标签: java mysql sql date timestamp

        Calendar calendar = Calendar.getInstance();         
        java.util.Date now = calendar.getTime();             
        java.sql.Time currentTimestamp = new java.sql.Time(now.getTime());
        Date date = new Date(currentTimestamp.getTime());
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String formattedDate = sdf.format(date);
        java.sql.Date.valueOf(formattedDate);
        System.out.println(formattedDate);

如何获取当前格式化的系统时间(yyyy-MM-dd)并将其插入表中?我已经尽了最大努力并且搜索了答案但是它不好我收到了不同的错误消息,例如当我插入java.sql.Date.valueOf(formattedDate);时我总是得到java.lang.IllegalArgumentException但是当我删除java.sql.Date.valueOf(formattedDate)并更改此行{ {1}} "+pcList.get(j).getid()+",0,0我总是收到错误"+pcList.get(j).getid()+",0,2014-07-07

Data truncation: Incorrect date value: '2000' for column 'date' at row 1

请帮助我!!

2 个答案:

答案 0 :(得分:1)

只使用数据库时间,而不是java时间。您可以使用now()CURRENT_DATE功能获取它。我不知道你想把它放在insert的哪个位置,但它可以放在值列表中。

答案 1 :(得分:0)

试试这个:

java.util.Date now = new java.util.Date();
java.sql.Date insertDate = new java.sql.Date(now.getTime());

您可以直接插入此日期。

当您尝试在日期列中保存字符串时,您收到此错误。