gpt4 book ai didi

java - 为 DateTime 列更新 MySQL 中的结果集

转载 作者:行者123 更新时间:2023-11-30 23:00:11 26 4
gpt4 key购买 nike

我正在寻找在遍历结果集时更新 MySQL 中 DateTime 字段的最佳方法。我在这些方面发现了一些其他问题,但没有一个解决 rs.updateDate 语句中的 Java 数据和 SQL 日期格式。我附上了编辑器犹豫不决的代码。

public class EmailQueueProcess {

public static Boolean process()
{

Date processedDtm = new Date();
java.util.Date today=new java.util.Date();
Timestamp currentTimestamp=new Timestamp(today.getTime());

Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
try {
strSQL = "select * from portal.emailqueue where portal.emailqueue.processedDtm is null";
conn = com.retailapppartners.Utils.staticGetConnection().getConnection();
stmt = conn.prepareStatement(strSQL, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);

//now loop through and update the process datetime values
rs = stmt.executeQuery();
ResultSetMetaData rsMetaData = (ResultSetMetaData) rs.getMetaData();
int numberOfColumns = rsMetaData.getColumnCount();
while (rs.next()) {
// Grab some data then update the row
rs.updateDate ("processedDtm", currentTimestamp);
rs.updateRow();

}

} catch .....

最佳答案

updateDate()采用 java.sql.Date。所以,我相信你在这里有两个选择,

  1. 使用rs.updateTimestamp("processedDtm", currentTimestamp);
  2. 使用 java.sql.Date currentTimestamp = new java.sql.Date();

根据 MySQL Documentation在表 5.1 中,

These MySQL Data Types          - Can always be converted to these Java types
DATE, TIME, DATETIME, TIMESTAMP - java.lang.String, java.sql.Date, java.sql.Timestamp

因此您可以使用上面的 1 或 2。

关于java - 为 DateTime 列更新 MySQL 中的结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24438879/

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