9 [整理版]ASP常用内置函数 :篇一上 | 下一篇: [转]一份ASP内存的释放的实... : |
本日志标题:抽取10万条数据,想起GetRows()   [2006-10-9] |
现有10W条数据,Access数据库保存 通过正常提取:
http://www.cnbruce.com/test/getrows/show1.asp 耗时3,250.000毫秒,总测试平均值在3秒左右 ========================================================== 使用存储过程提取:
http://www.cnbruce.com/test/getrows/show2.asp 耗时2,187.500毫秒,总测试平均值在2秒左右 ========================================================= 以上两种均不能彻底解决执行时间漫长的问题,主要原因即是循环每次都须向数据库抽取记录(Command速度相对较快) 那么使用GetRows()方法呢:
http://www.cnbruce.com/test/getrows/show3.asp 耗时187.500毫秒,总测试平均值在0.2秒左右 GetRows()方法是将数据从 Recordset 复制到二维数组中,这是一个二维数组,第一个下标标识字段,第二个则标识记录号 所以rsArray = rs.GetRows() rsArray(0, 0)就表示记录集第一行的第一字段值 rsArray(1, 0)就表示记录集第一行的第二字段值 数组的数据是保存在内存中的,这就从根本上解决了每次显示记录还需向数据库请求的麻烦。 另外,关于GetRows()的详细介绍和用法,这里有份内容参考 http://www.51windows.net/pages/Ado/mdmthgetrows.htm http://www.blueidea.com/tech/program/2005/2853.asp 在百度搜索完整的抽取10万条数据,想起GetRows()内容,或者用Google搜索相关的更多内容 |
By [cnbruce] at 16:36:18 | 评论 [59] | 浏览 [32906] | TrackBack| 返回顶部 |
9 [整理版]ASP常用内置函数 :篇一上 | 下一篇: [转]一份ASP内存的释放的实... : |
About Comments |
By [aaaada] at 2006-10-9 18:28:28 |
不太明白这个"UBound(rsArray, 2)"是什么意思,应该是总记录数,但是第一次见,呵呵 百度知道小偷.http://www.lvjin.com.cn/ |
By [知识酷] at 2006-10-9 19:04:39 |
UBound(rsArray, 2) 应该是取二维数组rsArray的第二维的上标吧。 |
By [Leady] at 2006-10-9 22:34:37 |
内存换速度... 都在内存运算,当然快乐 |
By [叶子] at 2006-10-10 10:50:26 |
内存消耗太大,正有这种担心,怎么用还得看具体情况吧 |
By [zhangjie617] at 2006-10-12 14:01:28 |
每次现实完毕就把数组给清空了,还会占用内存么? |
By [飞飞] at 2006-10-12 20:32:21 |
学习学习~~~~~ |
By [x_hunter] at 2006-12-28 12:28:42 |
用在读取系统信息并存在缓存中不错。 |
By [kuhanzhu] at 2007-7-2 15:16:11 |
各有优缺吧....当然,也不是很熟,不是很确定,不过这个试验很有价值,呵呵 |
By [helloworld] at 2007-12-2 23:58:28 |
不错,现在的大型网站都已经用到这种技术了(把要用的数据全部读到内存里面),在没有看到这个之前我一直想找个问题.呵呵!今天就这么解决了! 接着还有一个问题要解决:就是利用多个cpu,使运算速度更快.现在的一般程序在单核和多核上运行,多核占不了优势.如果有人明白的话,请教大家能够q我啊:51033044. 最好祝福 站长 新婚快乐 |
By [haohao110] at 2008-1-7 16:17:13 |