简体   繁体   English

如何将日期格式的日期更新为结果集?

[英]How to update date in Date format to a resultset?

Date dateformat=null;
Date i5Date=null;

SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
String date = i5t1.getText();

i5Date=(Date) formatter.parse(date);



while(rs.next())
{
rs.moveToInsertRow();
rs.updateDate("Date",i5Date);
rs.insertRow();
}

This doesnt update the resultset in date format. 这不会以日期格式更新结果集。 May i know what changes i have to make to update the resultset in date format. 我可以知道要对日期格式的结果集进行更新时必须进行哪些更改。 (Note : - I dont want to update in string format.) Note: - i have made the connections and the resultset is opened. (注意:-我不想以字符串格式进行更新。)注意:-我已建立连接,结果集已打开。

The date in result set is a java.sql.Date type. 结果集中的日期是java.sql.Date类型。 You are trying to format java.util.Date. 您正在尝试格式化java.util.Date。

You need to convert between them to get this to work assuming you are just rendering the date. 您需要在它们之间进行转换,以使其能够正常工作,前提是您只是呈现日期。 If not you need to make the change directly to your schema. 如果不是,则需要直接对架构进行更改。 See these SO posts: 请参阅以下SO帖子:

ResultSet.getTimestamp("date") vs ResultSet.getTimestamp("date", Calendar.getInstance(tz)) ResultSet.getTimestamp(“ date”)与ResultSet.getTimestamp(“ date”,Calendar.getInstance(tz))

java.util.Date vs java.sql.Date java.util.Date与java.sql.Date

Update To retrieve between dates like you are trying to do, you need to do: 更新要像您尝试的那样在日期之间进行检索,您需要执行以下操作:

Connection conn = null;
PreparedStatement pstmt = null;

conn = getConnection();
String query = "select * from table_name between ? and ?";
pstmt = conn.prepareStatement(query);
pstmt.setDate(1, new java.sql.Date(startDate.getTime()));
pstmt.setDate(2, new java.sql.Date(endDate.getTime()));

ResultSet resultSet = pstmt.executeQuery();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM