Neo4j JDBC将ResultSet类型设置为默认值以外的其他类型

时间:2014-09-05 15:46:38

标签: java jdbc neo4j

我正在运行Neo4j服务器(2.0.3),并通过Neo4j JDBC通过Cypher查询访问它。它适用于我迄今为止的大部分用途。

我目前想要运行一个查询,该查询将返回类型为TYPE_SCROLL_SENSITIVE的结果集,而不是默认的TYPE_FORWARD_ONLY

以下是我用来创建Statement并返回ResultSet的代码:

Statement all = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
results = all.executeQuery(query);

但是,当我尝试在ResultSet上使用方法beforeFirst()时,我得到一个SQLException。这是关闭的ResultSet或TYPE_FORWARD_ONLY的结果。我使用了isClosed()方法来确保它没有关闭。

Neo4j JDBC Driver中,有以下createStatement方法:

    @Override
public Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException
{
    return debug(new Neo4jStatement(this));
}

因此,从我所看到的,它只是忽略传递给它的类型和并发常量。我意识到并非所有JDBC驱动程序都允许不同类型的结果集。我猜我在问为什么Neo4j没有?如果没有,是否有计划对此实施支持?我觉得它很有用,并认为其他人也可以这样做?

0 个答案:

没有答案