当前位置: 首页 > 面试题库 >

如何从结果集中获取日期

司寇羽
2023-03-14
问题内容

我从ResultSet获取Date对象时遇到问题。在数据库中,它具有一个值(例如2014-08-01),并且从resultSet获取它之后,它具有另一个值(2014-08-31)。我知道ResultSet的getDate方法返回java.sql.Date,但是我尝试了一些解决方案,例如:

Date date=new java.util.Date(resultSet.getDate(3).getTime());

Date date=resultSet.getTimestamp();

但问题是相同的。如果我尝试,

Date date=resultSet.getDate();

它将抛出NullPointerException。

有人可以解释吗?


问题答案:

在您的情况下,您没有提供要检索的“日期”字段的columnName。

这应该做的工作

 while (rs.next()) {
    java.sql.Time dbSqlTime = rs.getTime("columnName");
    java.sql.Date dbSqlDate = rs.getDate("columnName");
    java.sql.Timestamp dbSqlTimestamp = rs.getTimestamp("columnName");     
    java.util.Date dbSqlTimeConverted = new java.util.Date(dbSqlTime.getTime());
    java.util.Date dbSqlDateConverted = new java.util.Date(dbSqlDate.getTime());
    System.out.println(dbSqlTimeConverted);
    System.out.println(dbSqlDateConverted);
 }

遍历ResultSetObject从一开始的日期ResultSetObjectjava.sql.Date然后将其转换为java.util.Date



 类似资料:
  • 问题内容: 我正在使用CsvJdbc(它是用于csv文件的JDBC驱动程序)来访问csv文件。我不知道csv文件包含多少列。如何获得列数?是否有任何JDBC函数?我在java.sql.ResultSet中找不到任何方法。 为了访问该文件,我使用类似于CsvJdbc网站上示例的代码。 问题答案: 您可以从ResultSetMetaData获取列号:

  • 我做了一个ping实验,结果是: 我需要的是收到的数据包数,丢包数,min,avg和max。 我试图使用

  • 问题内容: 我有下面的代码,我在其中将记录插入到表中。当我尝试获取结果集时,它返回null。如何将最新添加的行放入结果集中? 编辑:已解决 添加了以下方法以转到最后添加的行 问题答案: 当使用一个SQL语句,例如,或用,您必须使用,这将返回affeted的行数。在这种情况下,sql操作不会产生任何结果,因此调用executeQuery将抛出。 如果您确实需要a ,则必须使用SQL操作进行另一条语句

  • 问题内容: 您好,当没有匹配的学生时,我正在尝试犯一个错误…它将以这种方式显示, 并且我希望列名保持不变,但仍无法弄清楚…可以有人告诉我这是否是对?? 这是我的函数…并且在其中添加错误的地方添加了注释…但是我不知道如何获取列名 我这样尝试,但仍然给了我NULL!该代码在以下 问题答案: ResultSetMetaData metaData = resultSet.getMetaData(); in

  • 问题内容: 这个可以吗 ? 然后在尝试打印时 我有一个错误 问题答案: 尝试mysql_fetch_field函数。 例如:

  • 问题内容: 我有一个任意形状的numpy数组,例如: 以及最后一个轴上argmax的结果: 我想得到最大: 但无需重新计算所有内容。我试过了: 但是得到了: 问题答案: 您可以使用- 对于任何数量的维度的通用ndarray情况,如中所述,我们可以使用,就像这样-