【疑问】两个方法显示数据集的对比?
看到动网上的文章介绍了记录集的getrows方法
文章连接http://www.aspsky.net/article/show.aspx?id=2456
比通常使用的指针移动循环要更快
偶使用了两个页面测试
测试页面连接
http://www.lonelystar.org/bbs/a.asp
http://www.lonelystar.org/bbs/b.asp
a:使用getrows
<!--#include file="../include/conn.asp"-->
<%set rs=MyCon.execute("select bbs_title.*,userdata.* from bbs_title,userdata where bbs_title.kind=1 and bbs_title.status<>3 and bbs_title.top=1 and bbs_title.user_name=userdata.user_name order by bbs_title.last_reply desc")
dim arrRS,rowRS,row_n
arrRS=rs.getrows
rs.close
set rs=nothing
MyCon.close
set MyCon=nothing
rowRS=ubound(arrRS,2)
for row_n=0 to rowRS
response.write arrRS(9,row_n)&"<BR>"
next
endtime=timer
response.write FormatNumber((endtime-starttime)*1000,3)%>
b:使用通常的指针移动循环
<!--#include file="../include/conn.asp"-->
<%set rs=MyCon.execute("select bbs_title.*,userdata.* from bbs_title,userdata where bbs_title.kind=1 and bbs_title.status<>3 and bbs_title.top=1 and bbs_title.user_name=userdata.user_name order by bbs_title.last_reply desc")
do while not rs.eof
response.write rs(9)&"<BR>"
rs.movenext
loop
rs.close
set rs=nothing
MyCon.close
set MyCon=nothing
endtime=timer
response.write FormatNumber((endtime-starttime)*1000,3)%>
令偶不解的是测试结果不像文章介绍那样
a:468.750毫秒左右
b:203.125毫秒左右
以上结果都是在稳定下来的时候选取的
数据库共4千条左右记录
选取的共1千条左右记录
请教大家
getrows方法到底怎么样
另外在数据库比较庞大的时候
会不会造成数组庞大而导致速度慢或者空间问题?
使用6W条左右的数据库的结果是
a:3,312.500左右
b:3,125.000左右
这样看来好像数据库不管大小都是用指针循环比较快啊。。。