Java格式自定义日期到MySQL DATETIME

标签 java mysql date format

我有一个字符串,其值的格式为:01-Jul-2011 12:52:00。

我想将其格式化以插入到类型为 DATETIME 的 MySQL 数据库中。

我意识到我需要以 01-07-2011 12:52:00 的形式获取它,但我不知道该怎么做。

有什么解决办法吗?

最佳答案

@Jigar 是正确的,即使不简洁。但看起来您可能需要更多信息,我将用勺子喂给您。

首先,您不应该尝试格式化日期以适应 mysql。您应该将日期作为参数传递给您的 sql 查询(而不是构建 sql 字符串)。

要从您的输入中解析日期,请尝试这样的代码:

public static void main(String[] args) throws Exception {
    String input = "01-Jul-2011 12:52:00";
    SimpleDateFormat format = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss");
    Date date = format.parse(input);
    System.out.println(date); // "Fri Jul 01 12:52:00 EST 2011"
}

这是一个如何使用 JDBC 连接器传递参数进行 sql 调用的示例:

Date date = format.parse(input);
jdbcConnection.createStatement().execute("insert into mytable (id, some_date) values (?, ?)", new Object[]{1, date});

您无需担心如何格式化 mysql 的日期 - 让 JDBC 驱动程序为您完成。

关于Java格式自定义日期到MySQL DATETIME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6746564/

相关文章:

wordpress - 如何按日期限制wordpress tagcloud?

php - 如何用 PHP 处理日期和时间?

java - 使用 Olingo v2 Java 作为 PATCH to OData v2 服务的客户端

java - 如何在 WebApp 中的处理程序上调用 init()

mysql - 需要帮助 mysql 查询两个日期之间的信息

php - 获取两年之间的月份并获取每年所有月份的总和

java - 文本区域的字体系列没有改变

java - 按顺序从 Java 属性文件中提取值?

mysql - 尝试在 phpmyadmin 中创建表格时,我不断收到错误消息

mysql - VPS (ubuntu) : MySQL process dies 的内存使用问题