设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 67|回复: 5
打印 上一主题 下一主题

请教:代码执行变慢

[复制链接]
跳转到指定楼层
1#
发表于 2010-1-7 23:43:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近,我的网站上的asp代码页执行起来明显变慢了很多,代码没几行的页刷新一下居然要半天,代码较长的则动不动就脚本超时。
请问:是怎么回事。
相关说明:
1、我后台数据库里的记录数量在不断增加,不过每天的增量相当于库里的存量很小,而我的前台代码执行变慢很明显,是一下子变慢了,前后也就几天,所以这应该不是主要原因
2、网页执行慢是进入夏季(气温陡然升高)后发生的,前后不过几天,执行效率明显下降,难道气温对服务器影响这么大吗?而且气温也不总是很热,有几天稍微凉快的时候也没见它快了
3、单位的服务器是去年冬天(具体说是11月底)刚换的,DELL的poweredge 840,不说很好也算凑合吧,毕竟就是个三级单位。
4、为这事,我这两天刚把服务器系统重装了一遍,配IIS、装软件、打补丁,折腾了半天,效果不见。
2#
发表于 2010-1-7 23:43:11 | 只看该作者
是用的ASP,GetRows()我没接触过,我是个很敬业的信息员,我写的网站应用有十几个,里面设计到数据库连接的不下几百,都改很累
回复 支持 反对

使用道具 举报

3#
发表于 2010-1-7 23:43:13 | 只看该作者
GetRows()是什么
怎么用啊!!!!!
回复 支持 反对

使用道具 举报

4#
发表于 2010-1-7 23:43:17 | 只看该作者
你是用ASP写的程序吗!还是说你的服务器慢啊!

你读数据库的时候用GetRows()试试!这个应该很快的!
回复 支持 反对

使用道具 举报

5#
发表于 2010-1-7 23:43:21 | 只看该作者
GetRows楼主
ADO也提供更有效率方法来取得数据。GetRows 方法传回一个二维的数组变量,每一行对应Recordset中的一笔记录,且每一列对应到记录中的字段。此方法的语法如下:

varArray = rs.GetRows([Rows], [Start], [Fields])

Rows 是要读取记录的数量;如果想要取得Recordset所有记录,可用-1或省略此参数。Start 是指出第一个被读取记录的书签;也可以是下列列举常数中的一个:0-adBookmarkCurrent(目前记录)、1-adBookmarkFirst(第一笔记录)、或2-adBookmarkLast(最后记录)。

Fields 是可选择的字段名称数组,其用来限制要读取的数据量。(也可指定单一字段名称、单一字段索引、或者一个字段索引数组)。当设定 Rows 为少于Recordset记录笔数时,第一笔未读取的记录变成现行记录。若省略 Rows 参数或设定为-1-adGetRowsRest或大于未读取的笔数时,GetRows 方法会读取所有记录并让Recordset在EOF状态,而不会产生任何错误。

当处理目的变量数组的数据时,应该记得数据储存方式是有点相反的感觉:数组中第一维定义Recordset的字段(数据行),第二维定义Recordset的数据列。

GetRows 方法通常比一次读一笔记录的循环要来得快些,但使用这方法时,必须确定Recordset未包含太多记录;否则,会很容易以一个非常大的变量数组来填满所有内存。基于相同的原因,得小心不要包括任何BLOB(Binary Large Object)或CLOB(Character Large Object)字段;若如此做的化,应用程序一定会爆掉,特别是对于较大的Recordset而言。最后,记住此方法传回的变量数组是以0为基底的;传回记录的笔数是UBound(values,2)+1,传回字段数是UBound(value, 1)+1。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 20:42 , Processed in 0.121965 second(s), 8 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表