gpt4 book ai didi

java - 如何使用 Java 将系统时间插入到 Ms Access 中?

转载 作者:行者123 更新时间:2023-11-30 08:12:06 25 4
gpt4 key购买 nike

我刚刚使用 Java(Netbeans) 创建了一个简单的学生注册表。它有几列用于输入学生的数据,如注册号、姓名、地址等,还有一个插入按钮,可将数据插入到在 MS Access 中创建的表中。它工作正常。但我需要存储用户填写的时间该表单。这意味着当用户填写该表单时,应捕获系统时间并将其存储在表中的每个条目(每个元组)中。所以我想知道如何获取系统时间并插入MS Access数据库。我找到了以下代码。但我不知道如何将代码捕获的时间传递到数据库。我已经创建了字段在数据库中输入时间。

Calendar cal = Calendar.getInstance();
java.util.Date currentTime = cal.getTime();

这是我为了向表传递时间而编写的代码......

ps = con.prepareStatement("insert into RegInfo(RegNo,StudName,Address,"
+ "Telephone,Stream,RegDate,Time) values(?,?,?,?,?,?,?)");
ps.setLong(6,currentTime.getTime());

我使用了你的代码 Razvan。它工作得很好,但它没有将时间插入表中......(“System.out.println”工作正常)......

 final String t1 = "hh:mm:ss";
final DateFormat df = new SimpleDateFormat(t1);
final String formattedTime = df.format(new java.util.Date());
ps.setString(7, formattedTime);
System.out.println("formattedTime "+formattedTime);

最佳答案

您只需在 INSERT 查询中使用 Now() 函数即可:

try (Connection conn = DriverManager.getConnection(connStr)) {
String sql;
sql = "INSERT INTO RegInfo (RegNo, StudName, Address, Telephone, Stream, RegDateTime) " +
"VALUES (?, ?, ?, ?, ?, Now())";
try (PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setInt(1, 3);
ps.setString(2, "Gord");
ps.setString(3, "123 Main St");
ps.setString(4, "416-555-1212");
ps.setString(5, "Standard");
ps.executeUpdate();
}
} catch (Exception e) {
e.printStackTrace(System.err);
}

这适用于 JDBC-ODBC(已过时,已从 Java 8 中删除)和 UCanAccess (更多信息here)。

请注意,Access 中的日期/时间列始终包含日期和时间组件,因此您无需为 RegDateTime 维护单独的列。

关于java - 如何使用 Java 将系统时间插入到 Ms Access 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30247932/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com