gpt4 book ai didi

java - 用于时间戳比较的准备语句的字符串值

转载 作者:太空宇宙 更新时间:2023-11-04 10:42:57 27 4
gpt4 key购买 nike

使用 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();
}

有人知道如何正确发送值吗?或者有什么更好的方法?

最佳答案

试试这个..!

preparedStatement.setTimestamp(1,getCurrentTimeStamp());

您也可以使用文本字段字符串来生成时间戳。

private static java.sql.Timestamp getCurrentTimeStamp() {

java.util.Date today = new java.util.Date();
return new java.sql.Timestamp(today.getTime());

}


private static Timestamp getTimeStamp(String ts){

//Change the format as per your requirement
DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date date = dateFormat.parse(ts));
long time = date.getTime();
new Timestamp(time);

}

关于java - 用于时间戳比较的准备语句的字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48735415/

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