脚本运行超时,改代码还是改Server.ScriptTimeOut?

suntech2000 2010-03-26 10:03:04
asp+access
数据库表goods_info有6万多条记录
如果价格变动,要更新的字段有5个
页面执行时间太长,会自动中断,这是为什么?
多次发现,一秒中更新约8条记录,如果更新1~2千条记录没问题,时间1~2分钟。
但有时候要要上万条记录变更数据,页面执行1~2钟就自动中断的,脚本运行超时。。。。。。我设置的是90秒超时
要执行这么多记录总不能把响应时间设到无限长吗?<% Server.ScriptTimeOut=9999999 %>
有没有其他办法?改代码可以吗?怎么改才可以?
6万多条记录也不多啊,就算一秒钟更新10条记录,要执行1.6个小时????这个不太正常吧?



我的代码:
***************************************************************************************
if request("action")="update" then

timeS=timer()
set rs=server.CreateObject("adodb.recordset")
rs.Open "select * from goods_info where g_id=''",conn,1,3 '根据条件变更条件筛选记录
if rs.Bof and rs.Eof then
Msg="<br><li>没有要更新的记录!</li>"
dTime=-1
call WriteMsg()
else
do while not rs.Eof then
rs("p1")=rs("p1")*request("cRate") '更新零售价
rs("p2")=...... '更新字段2
rs("p3")=...... '更新字段3
rs("p4")=...... '更新字段4
rs("p5")=...... '更新字段5
rs.Update--------------------------------------》是否必须一条记录一次update?
loop
rs.Close
set rs=nothing
end if
timeE=timer()
calTime=FormatNumber((timeS-timeE),2)
aveTime=formatNumber(calTime/r,3)
Msg="<br><li>数据库更新完成!</li>"
Msg=msg&"<br><li>执行时间:"&calTime& "秒,平均"&aveTime&"秒/个记录</li>"
dTime=-1
call WriteMsg()

end if
...全文
96 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
suntech2000 2010-03-26
  • 打赏
  • 举报
回复
<% Server.ScriptTimeOut=9999999 %>
这个可以加长页面允许的执行时间。

只能用这个方法吗?
有没别的办法

还有个,执行时间这么长,还得做个进度条,要不然电脑死机了也不知道啊
yousite1 2010-03-26
  • 打赏
  • 举报
回复
<% Server.ScriptTimeOut=9999999 %>
这个可以加长页面允许的执行时间。
rs.Update--------------------------------------》是否必须一条记录一次update?
可以到最后一次UPDATE就可以了
你可以试一下,我以前是这么写的
yan11cn 2010-03-26
  • 打赏
  • 举报
回复
看看代码能不能优化啦
wangxinwangyan 2010-03-26
  • 打赏
  • 举报
回复
脚本运行超时基本都是脚本的问题。改代码吧呵呵。
小伙真帅 2010-03-26
  • 打赏
  • 举报
回复
其实没有那个必要.

把脚本时间延长了,那其它的脚本要是出错了.那也是停在那里一直运行.浪费了服务器资源的.

其实我们可以对这些数据进行分步处理.每次处理100个数据.这样就快多啦.然后做一个frame,让它在处理完了100个数据后,再打出一行<meta http-equiv="refresh" content="0">


在数据库做一个字段.表示这条记录是否已经被处理过了.这就可以了.

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧