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

如何从JDBC结果集中获取列数?

颜文昌
2023-03-14
问题内容

我正在使用CsvJdbc(它是用于csv文件的JDBC驱动程序)来访问csv文件。我不知道csv文件包含多少列。如何获得列数?是否有任何JDBC函数?我在java.sql.ResultSet中找不到任何方法。

为了访问该文件,我使用类似于CsvJdbc网站上示例的代码。


问题答案:

您可以从ResultSetMetaData获取列号:

Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(query);
ResultSetMetaData rsmd = rs.getMetaData();

int columnsNumber = rsmd.getColumnCount();


 类似资料:
  • 问题内容: 我从ResultSet获取Date对象时遇到问题。在数据库中,它具有一个值(例如2014-08-01),并且从resultSet获取它之后,它具有另一个值(2014-08-31)。我知道ResultSet的getDate方法返回java.sql.Date,但是我尝试了一些解决方案,例如: 或 但问题是相同的。如果我尝试, 它将抛出NullPointerException。 有人可以解释

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

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

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

  • 主要内容:ResultSet类型,ResultSet的并发性,浏览结果集,查看结果集,更新结果集SQL语句执行后从数据库查询读取数据,返回的数据放在结果集中。 语句用于从数据库中选择行并在结果集中查看它们的标准方法。 接口表示数据库查询的结果集。 对象维护指向结果集中当前行的游标。 术语“结果集”是指包含在对象中的行和列数据。 接口的方法可以分为三类: 浏览方法:用于移动光标。 获取方法:用于查看光标指向的当前行的列中的数据。 更新方法:用于更新当前行的列中的数据。 然后在基础数据库中更新数

  • 为了最大限度地利用java8流和Spring4,我在来自Springs jsdbRestTem板的JDBC结果集上使用了流API,如下所示(代码缩短并简化): 这似乎很有效。客户端可以像这样使用流Api,而不用担心jdbc类 但是,当我重构(尝试将流提供给客户端方法)时,像这样: 我明白了 因此,数据似乎只能在方法。是否有一种干净的方法可以绕过这个问题,返回来自DB的元素的惰性流?假设具体化结果和