【发布时间】:2012-01-16 09:03:42
【问题描述】:
我正在使用带有 Java 和 Eclipse 的 Derby 数据库。我有一个具有 TIMESTAMP 字段的表,我使用模型从中填充 JTable。我发现时间戳和数据以及 java.sql 和 java.utils 非常令人困惑。以下代码行与cannot cast date to timestamp 错误。 mod 是连接 Derby 表和 JTable 的模型。
int rowcount = mod.getRowCount();
java.sql.Timestamp ts = (java.sql.Timestamp) mod.getValueAt(rowcount-1,1);
我的目标是获取最近记录的日期并减去 30 天,然后在同一数据库上运行 sql 查询以查找比该日期更近的所有记录。如何恢复第一个时间戳,减去 30 天,然后构造一个查询,将减法的结果作为 WHERE 子句中的条件。听起来很简单,但我遇到了很大的困难,我觉得我一定错过了一些基本原则。我认为转换为 long 和 back 可能是这条路线,但遇到了同样的演员表问题。
【问题讨论】:
-
你不能使用 Derby 内置的日期函数在一个 sql-request 中完成所有事情吗?