关于数据库查询和Java中ResultSet的问题!!!

数据库中有1000000000000条记录在JDBC中用select*fromtalbe语句---------------------------------------... 数据库中有1000000000000条记录

在JDBC中用select * from talbe 语句
-----------------------------------------
List list = new ArrayList();
for(int i=0;i<10;i++){
rs.next();
list.add(rs.getString("xxxx"));
}
-----------------------------------------
这样只取ResultSet中的10条记录的话。
数据库实际查询了10条还是1000000000000条?
其实是别人分页查询的一部分。。我认为查了全部,他说那只是个假的,物理上只查了10条。。我试了下,速度还行。。请更多的人给点意见,这样行吗?
展开
 我来答
轻薄的假像
2006-07-09 · TA获得超过390个赞
知道小有建树答主
回答量:368
采纳率:0%
帮助的人:0
展开全部
这肯定是你操作了100000000000000条数据,然后只利用了10条做为显示,这是非常低效的

分页的话。。

用select top 10 * from table来解决吧,这是只取到前10条纪录
xiangsiwuchang
2006-07-08 · TA获得超过337个赞
知道小有建树答主
回答量:527
采纳率:0%
帮助的人:516万
展开全部
ResultSet rs = ......;
ResultSetMetaData rsmd = rs.getMetaData();
int colCount = rsmd.getColumnCount();
List list = new ArrayList();
while(rs.next()){
for(int i=0;i<colCount;i++){
String rs1=rs.getString("xxxx");
}
list.add(rs1);
}

这样看看!通过结果集,可以得到原数据结果集,在等到总共的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
blacklong
2006-07-09 · TA获得超过1500个赞
知道大有可为答主
回答量:2745
采纳率:0%
帮助的人:1246万
展开全部
当然看你得sql了,当然是返回1000000000000条。
只是你只用了10条而已。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gino99
2006-07-09 · TA获得超过1562个赞
知道小有建树答主
回答量:1361
采纳率:0%
帮助的人:1169万
展开全部
帮你顶起来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
翠霁竭依心
2019-08-31 · TA获得超过3685个赞
知道大有可为答主
回答量:3152
采纳率:25%
帮助的人:227万
展开全部
把resultset
rs
=
sta.executeupdate(sql);
去掉resultset
rs
=
改成sta.executeupdate(sql);或者改成int
rs
=
sta.executeupdate(sql);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
钊悟泥迎波
2019-03-15 · TA获得超过3761个赞
知道大有可为答主
回答量:3091
采纳率:30%
帮助的人:221万
展开全部
ResultSet
rs
=
......;
ResultSetMetaData
rsmd
=
rs.getMetaData();
int
colCount
=
rsmd.getColumnCount();
List
list
=
new
ArrayList();
while(rs.next()){
for(int
i=0;i
评论
0
0
加载更多
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式