【发布时间】:2018-07-21 23:17:04
【问题描述】:
使用 TimeStamp 的 WHERE 子句从表中选择数据。 我想设置一个从 TextField 检索的字符串值来显示过滤表。
不工作:
public ResultSet queryAlarms() throws SQLException
String sql = "SELECT * FROM BDCS.dbo.Alarms WHERE AlarmTime > ?";
PreparedStatement ps = connection.prepareStatement(sql);
ps.setString(1, " '2017-12-29 14:45' ");
return ps.executeQuery();
}
工作:
public ResultSet queryAlarms() throws SQLException {
String sql = "SELECT * FROM BDCS.dbo.Alarms WHERE AlarmTime > '2017-12-29 14:45'";
PreparedStatement ps = connection.prepareStatement(sql);
return ps.executeQuery();
}
有人知道如何正确发送值吗?或者有什么更好的方法?
【问题讨论】:
-
而不是
String将LocalDateTime或Instant传递给查询。ps.setObject(1, myLocalDateTime);或类似的瞬间。
标签: java sql-server jdbc timestamp