JDBC: Inserting Date values into MySQL

前端 未结 3 476
囚心锁ツ
囚心锁ツ 2021-01-12 08:42

I would like to know how to set Date values to MySQL database, using Java JDBC. Following is my code.

 String lastCrawlDate = \"2014-01-28\"
 PreparedStateme         


        
3条回答
  •  借酒劲吻你
    2021-01-12 09:15

    Immediately insert your date as a string

    p.setString(1, lastCrawlDate);
    

    Exactly as

    insert into Table1 (last_crawl_date) values ('2014-01-28');
    

    MySQL recognizes DATE values in these formats:

    • As a string in either 'YYYY-MM-DD' or 'YY-MM-DD' format. A “relaxed” syntax is permitted: Any punctuation character may be used as the delimiter between date parts. For example, '2012-12-31', '2012/12/31', '2012^12^31', and '2012@12@31' are equivalent.

    • As a string with no delimiters in either 'YYYYMMDD' or 'YYMMDD' format, provided that the string makes sense as a date. For example, '20070523' and '070523' are interpreted as '2007-05-23', but '071332' is illegal (it has nonsensical month and day parts) and becomes '0000-00-00'.

    • As a number in either YYYYMMDD or YYMMDD format, provided that the number makes sense as a date. For example, 19830905 and 830905 are interpreted as '1983-09-05'.

    Using this approach, you can write a method to obtain a string from a given Date:

    public static String getString(Date d) {
       return new SimpleDateFormat("yyyy-MM-dd").format(d);
    }
    

提交回复
热议问题