com.microsoft.sqlserver.jdbc.SQLServerException: 只进结果集不支持请求的操作。 5
ResultSetrs=conn.getMetaData().getTables(null,null,null,null);rs.last();执行到last的时候出现“...
ResultSet rs=conn.getMetaData().getTables(null, null, null, null);
rs.last();
执行到last的时候出现“只进结果集不支持请求的操作。”,测试过了,ResultSet rs=conn.getMetaData().getTables(null, null, null, null);执行通过 展开
rs.last();
执行到last的时候出现“只进结果集不支持请求的操作。”,测试过了,ResultSet rs=conn.getMetaData().getTables(null, null, null, null);执行通过 展开
1个回答
展开全部
首先我们了解下rs.last()这个方法是干嘛用的。在来使用
一下是javaAPI中的:
boolean last()
throws SQLException将光标移动到此 ResultSet 对象的最后一行。
返回:
如果光标位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误;在已关闭的结果集上调用此方法或结果集类型为 TYPE_FORWARD_ONLY
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
-------------------------------------------------------------------------------------------------
从上面看他返回出来的是 个boolean类型的值,我想你应该会怎么用了吧。
一下是javaAPI中的:
boolean last()
throws SQLException将光标移动到此 ResultSet 对象的最后一行。
返回:
如果光标位于有效行,则返回 true;如果结果集中不存在任何行,则返回 false
抛出:
SQLException - 如果发生数据库访问错误;在已关闭的结果集上调用此方法或结果集类型为 TYPE_FORWARD_ONLY
SQLFeatureNotSupportedException - 如果 JDBC 驱动程序不支持此方法
-------------------------------------------------------------------------------------------------
从上面看他返回出来的是 个boolean类型的值,我想你应该会怎么用了吧。
追问
对于这种记录集我不知道怎么设置成可以前后滚动的,对于ResultSet rs=Statement.execute(sql)的记录集我知道怎么设置成可以前后滚动的。记录集的游标函数我都知道怎么用,就是gettables(0返回的记录集不知道怎么设置成前后滚动的。就算了是不能前后滚动,只能向前滚动,那么last()应该也是可以的,这里怎么出现“只进结果集不支持请求的操作。”
追答
我建议你去API里面对比下他们的结果就明白了。
conn.getMetaData().getTables (null, null, null, null):getTables 这个方法在java.sql
.DatabaseMetaData 这个接口下。在这里你传入的参数都是空,所以没有值,又怎么看rs.last()呢。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |