gpt4 book ai didi

java - Csv Jdbc : ResultSet. getRow() 不受支持

转载 作者:行者123 更新时间:2023-11-30 05:05:47 24 4
gpt4 key购买 nike

如何在 CsvJdbc 中启用 ResultSet.getRow()?

(这是一个应该返回当前行号的函数)

它似乎依赖于 isScrollable 成员。如果有人以前遇到过这个问题,您如何解决它?

  • 这是我需要在传入的 Properties 对象中设置的属性吗?
  • 我需要“清理”或以某种方式修改我的 CSV 文件吗?

谢谢!

<小时/>

更多信息

我使用的应用程序能够从任何 JDBC 源导入数据。我需要从 CSV 文件中获取一些数据,因此我使用 CsvJdbc。此应用程序需要访问其导入的每行数据的行号,不幸的是 CsvResultSet#getRow() 抛出异常,提示“Csv Jdbc : ResultSet.getRow() 不受支持”。

以下是实现。 CsvJdbc 中的 getRow() 方法 (1.0.5)

/**
* Retrieves the current row number. The first row is number 1, the
* second number 2, and so on.
*
* @return the current row number; <code>0</code> if there is no current row
* @exception SQLException if a database access error occurs
*/
public int getRow() throws SQLException {
if (this.isScrollable == ResultSet.TYPE_SCROLL_SENSITIVE) {
return currentRow;
} else {
throw new UnsupportedOperationException(
"ResultSet.getRow() unsupported");
}
}

查看源代码的其余部分,似乎唯一设置 isScrollable 成员属性的位置是在构造函数中并作为默认值。

最佳答案

您是否尝试过创建可滚动的语句...

语句 stmt = connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);

关于java - Csv Jdbc : ResultSet. getRow() 不受支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5137997/

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