gpt4 book ai didi

java.sql.SQLException : no such column and false Period getDays result

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

我是一名 Java 初学者,正在努力解决两个问题。

1) SQL 异常:没有这样的列“Ofen”

这是我的代码,我想从名为“kleintest.db”的 SQLite 数据库获取特定数据,其中包含 2 个表“maindata”和“Zahlwertuntertable”。 maindata 包含文本形式的“Ofen”条目。 ResultSet rs 通常应从 maindata 获取所有数据,ResultSet rs2 应从 Zahlwertuntertable 获取权重。但现在运行程序会显示上述错误。

public static void readDB() {

try {
Statement stmt = connection.createStatement();
//ResultSet rs = stmt.executeQuery("SELECT * FROM Gewichtsabnahme;");
ResultSet rs = stmt.executeQuery("SELECT * FROM maindata;");
ResultSet rs2 = stmt.executeQuery("SELECT * FROM Zahlwertuntertable;");

while (rs.next()) {
System.out.println("Ofen = " + rs.getString("Ofen"));
System.out.println("Platznummer = " + rs.getInt("Zahlwert"));
System.out.println("Startdatum = " + rs.getString("Startdatum"));
LocalDate heute = LocalDate.now();
String Datum = rs.getString("Startdatum");
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy");
LocalDate Wägetag = LocalDate.parse(Datum, formatter);
Period DiffTag = Period.between(heute, Wägetag);
System.out.format("Tage = " + DiffTag.getDays() + "\n"); //

System.out.println("Gewicht = " + rs2.getInt("Startgewicht"));

}
rs.close();
rs2.close();
connection.close();

} catch (SQLException e) {
System.err.println("Zugriff auf DB nicht möglich.");
e.printStackTrace();
}
}

表 maindata 包含以下项目:Laufnummer Ofen Zahlwert Startdatum

但是 Laufnummer 只是一个主键,不应该被检索。

2) 下一个问题是关于Period 函数的问题。这工作得很好,但作为打印结果,我会得到 P 1D 或 P 1M 2D ,看起来有点令人困惑。我喜欢只打印简单的天数,例如 45 或 45D,并将 getDays() 添加到我的 DiffTag 中。现在我的结果是-1,这根本没有意义。这里出了什么问题?

Period DiffTag = Period.between(heute, Wägetag);
System.out.format("Tage = " + DiffTag.getDays() + "\n");

感谢您的建议和我可能错过的链接。但到目前为止我所看到的一切都没有指出我的具体问题。

最佳答案

对于 Statement 对象,一次只能打开一个结果集,因此当您再次执行第二个查询“Zahlwertuntertable”时,第一个结果集将被关闭。

因此,要么添加另一条语句,要么一次处理一个查询。

此外,现在看起来很奇怪,您调用 rs.next() 但从未调用 rs2.next()

关于java.sql.SQLException : no such column and false Period getDays result,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49128835/

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