【发布时间】:2012-04-27 08:16:51
【问题描述】:
我必须查询一个 MSSQL 数据库,并且我希望查询的结果以 Array 或 ArrayList 的形式返回。
我现在有这个代码,但它给出了一个错误。 我已经连接到数据库,所以这不是问题。
public ArrayList<Array> queryResult(String q) throws SQLException {
ArrayList<Array> array = new ArrayList<>();
Statement statement = this.getConnection().createStatement();
ResultSet rs = statement.executeQuery(q);
while(rs.next()) {
Array n = rs.getArray(rs.getRow());
System.out.println(n);
array.add(n);
}
return array;
}
我收到以下错误
Exception in thread "main" com.microsoft.sqlserver.jdbc.SQLServerException: This operation is not supported.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)
at com.microsoft.sqlserver.jdbc.SQLServerResultSet.NotImplemented(SQLServerResultSet.java:750)
at com.microsoft.sqlserver.jdbc.SQLServerResultSet.getArray(SQLServerResultSet.java:2625)
at server.Database.queryResult(Database.java:52)
at server.Server.listen(Server.java:57)
at server.Server.run(Server.java:34) at
server.Server.<init>(Server.java:28) at
server.Server.main(Server.java:94) Java Result: 1
【问题讨论】:
-
顺便说一句,您应该使用 try/finally 构造来关闭您的
ResultSet和Statement对象。 -
@Mulmoth 我会看看谢谢 :)
标签: java sql-server jdbc