【问题标题】:Java INSERT today in sql databae今天在 sql 数据库中插入 Java
【发布时间】:2013-11-12 22:49:44
【问题描述】:

我已经搜索了很长时间,但找不到答案。 我的问题很简单……

如何使用java将今天的日期插入到日期格式的sql数据库中? 这是代码。 (时间和日期现在为空,我如何让他们得到现在的时间和今天的日期)

    String timeNow = null;
    DateFormat dateNow = null;       

    String sql = "INSERT INTO fys.`luggage` (customer_id, description, location, date, time, is_lost, is_handled) VALUES ('"
            + customerId + "', '" + description + "', '" + location + "', '" 
            + dateNow + "', '" + timeNow + "', '" + isLost 
            + "', '" + isHandled + "')";
    db.insertQuery(sql);
}

【问题讨论】:

标签: java sql date time


【解决方案1】:

日期是日期,而不是字符串

您似乎想要为您的日期时间制作一个字符串。不必要。 JDBC 知道 Java 数据类型 java.sql.Date,它是 java.util.Date 的薄包装。

参见另一个问题中的示例,Datetime in javathis java2s.com tutorial

乔达时间

顺便说一句,如果使用Joda-Time,您可以轻松地在 org.joda.time.DateTime 和 java.util.Date 之间进行转换。在DateTime 类上调用toDate() 方法。

Java 8 中的 JSR 310

在未来,Java 8 包含一组由JSR 310: Date and Time API 定义的新 java.time.* 类,以取代臭名昭著的糟糕 java.util.Date/Calendar 类。这些课程的灵感来自 Joda-Time,但经过完全重新设计。

ISO 8601 字符串格式

如果您真的想将日期时间作为字符串传递,请使用数据库识别的格式。例如,Postgres 接受ISO 8601 格式等。请参阅 Postgres 文档中 Date/Time Types 页面的“日期/时间输入”部分。

让服务器设置日期时间

一般来说,让数据库引擎插入日期时间比使用您的编程语言更好。大多数数据库系统都有各种函数,您可以调用它们来生成当前日期时间。 SQL 标准指定了 few such functions,但通常数据库系统还提供各种其他服务。

例如,Postgres 9 offers several ways 获取当前日期时间。

请务必阅读文档。例如,在 Postgres 中,您可以选择获取事务开始时刻的日期时间,或者您可以获取执行日期时间函数的时刻(晚于事务开始)。当您在多个记录中记录该时间并希望它们都匹配相同的时间值时,事务开始时间很有用。

【讨论】:

    【解决方案2】:

    不需要你的变量。即使很难初始化一个日期(带时间)到现在也只是创建一个默认的。新日期();

    直接使用 SYSDATE。也不需要使用 2 列。因为 DATE 实际上也持有时间。

    String sql = "INSERT INTO fys.`luggage` (customer_id, description, location, date_time, is_lost, is_handled) VALUES ('"
                + customerId + "', '" + description + "', '" + location + "', SYSDATE, '" + isLost 
                + "', '" + isHandled + "')";
    

    【讨论】:

      猜你喜欢
      • 2017-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多