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);执行通过
展开
 我来答
杜忆楣03D
2011-06-27 · TA获得超过458个赞
知道小有建树答主
回答量:364
采纳率:0%
帮助的人:393万
展开全部
首先我们了解下rs.last()这个方法是干嘛用的。在来使用
一下是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()呢。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式