高效率的GetRows()的使用方法
时间:2008-09-23 18:29:00
Rs.GetRows(N):N代表获取记录数量
Rs.GetRows(1):1表示只返回一行记录
Rs.GetRows(-1):-1表示默认值,返回所有记录
使用GetRows方法生成1个二维数组
用它可以大幅提升ASP的效能.
<%
Set conn = Server.CreateObject("ADODB.Connection")
Set cmd = Server.CreateObject("ADODB.Command")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("db2.mdb")
cmd.ActiveConnection = conn
cmd.CommandText = "Select * from people order by id desc"
Set rs = cmd.Execute
rsArray = rs.GetRows()'Rs.GetRows(N):N代表获取记录数量
For i = 0 To UBound(rsArray, 2)
Response.Write rsArray(0, i)&" | "
Next
%>
10W条记录耗时187.500毫秒,总测试平均值在0.2秒左右
GetRows()方法是将数据从 Recordset 复制到二维数组中,这是一个二维数组,第一个下标标识字段,第二个则标识记录号
所以rsArray = rs.GetRows()
rsArray(0, 0)就表示记录集第一行的第一字段值
rsArray(1, 0)就表示记录集第一行的第二字段值
数组的数据是保存在内存中的,这就从根本上解决了每次显示记录还需向数据库请求的麻烦。
再比如一个BLOG分类的表 b_cat,结构和数据如下:
ID | Title | Intro
------------------------------
1 | 新闻 | 这里是新闻
2 | 文章 | 这里是文章
3 | 下载 | 这里是下载
这样表建立好了,数据也有了,下面用GetRows 方法
Dim Rs_Cat
Dim Arr_Cat
Set Rs_Cat=Conn.ExeCute("Select ID,Title,Intro FROM b_Cat orDER BY ID ASC")
Arr_Cat=Rs_Cat.GetRows
Set Rs_Cat=Nothing
把表数据导出到数组!下面将遍历这个数组
Dim Arr_CatNumS,Arr_CatNumI
Arr_CatNumS=Ubound(Arr_Cat,2) '得到数组中数据的下标
For Arr_CatNumI=0 To Arr_CatNumS
Response.Write("ID:"&Arr_Cat(0,Arr_CatNumI)&" | 标题:"&Arr_Cat(1,Arr_CatNumI)&" | 介绍:"&Arr_Cat(2,Arr_CatNumI)&"<br>")
Next
于是,输出的数据为:
ID:1 | 标题:新闻 | 介绍:这里是新闻
ID:2 | 标题:文章 | 介绍:这里是文章
ID:3 | 标题:下载 | 介绍:这里是下载
很多人可能只知道GetRows方法是形成一个2维数组,但是不知道是怎么样一个2维数组。看看下面的例子:
生成的2维数组通过表格的形式显示出来:
这样就对比起来就清晰多了!
标签:GetRows,数据库,性能,asp
0
投稿
猜你喜欢
巧用一条SQL 实现其它进制到十进制转换
2009-01-19 13:16:00
用asp实现的获取文件夹中文件的个数的代码
2011-03-08 11:02:00
搜索关键字加亮js实现方法
2007-08-27 14:11:00
五个影响mysql性能的关键配置
2010-08-08 09:13:00
用ASP设计购物车
2008-04-17 13:52:00
Dreamweaver制作技巧四则
2008-01-04 09:42:00
jQuery 1.4 Released 新特性官方诠释
2010-04-01 12:23:00
javascript 获取硬盘信息代码
2007-12-08 21:27:00
使用正则表达式找出不包含特定字符串的条目
2010-03-02 22:06:00
Sql Server、Oracle以及Access数据库 判断字段是否为空的办法 (From calmzeal's code life)
2011-02-24 19:44:00
动态加载JavaScript的小实践
2009-11-12 12:38:00
用户是如何浏览你的网站的
2010-05-03 14:26:00
三种数据库利用SQL语句进行高效果分页
2008-11-28 14:52:00
界面设计10条可用性方面的启发
2010-04-06 17:22:00
文章关键字替换带链接需要注意的两个问题
2010-02-25 12:18:00
ASP所有的Session变量获取实现代码
2011-03-11 10:44:00
关于Ajax responseText 中文乱码问题
2008-02-12 16:30:00
PJBlog3优化——单击自动输入验证码
2009-05-17 11:03:00
解析:在SQL Server下数据库链接的使用
2009-01-23 13:37:00
MySQL的root密码丢失解决方法
2011-05-05 15:56:00