ASP中执行大型存储过程,怎样设计程序才合适

Jeroki 2002-11-13 05:20:58
我的ASP程序中,要求执行4个对大量数据操作的存储过程,这几个存储过程中运行时间有的长达30分钟(在查询分析器中执行),现在客户一定要求在WEB上操作,好整人啊,请各位指教·
...全文
45 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Jeroki 2002-11-14
  • 打赏
  • 举报
回复
请问:: wpmsoft(红旗下的蛋)

进度条怎么弄?
wpmsoft 2002-11-14
  • 打赏
  • 举报
回复
长就长吧,那没有办法了。
在WEB页面上醒目地提示用户,正在执行后端的数据库操作,请耐心等等,如果关机,出现问题后,责任自负。
最好再搞他个什么进度条的,真的假的无所谓,只要在动就行,这样子用户知道系统还没有死掉。。。
Jeroki 2002-11-14
  • 打赏
  • 举报
回复
看看我的源程序:

<style>
<!--
all.clsMenuItemNS{font-size: 9pt; color: white; text-decoration: none;}
.clsMenuItemIE{text-decoration: none; font-size: 9pt; color: white; cursor: hand;}
A:hover {color: brown;}
-->
</style>
<STYLE type=text/css>BODY {
FONT-SIZE: 9pt
}
P {

}
TABLE {
FONT-SIZE: 9pt
}
TD {
FONT-SIZE: 9pt
}
A:link {
COLOR: BROWN; TEXT-DECORATION: none
}
A:hover {
COLOR: green
}
A:visited {
TEXT-DECORATION: none
}
SELECT.SmallSel {
BACKGROUND-COLOR: rgb(238,238,238); FONT-FAMILY: "宋体"; FONT-SIZE: 9pt
}
SELECT.Sel2 {
BACKGROUND-COLOR: #9999ff; COLOR: white; FONT-SIZE: 9pt
}
INPUT {
BACKGROUND-COLOR: rgb(238,238,238); FONT-FAMILY: "宋体"; FONT-SIZE: 9pt
}
</STYLE>
<!--#include file="Connections/db_market.asp" -->
<%Sub ListForm%>
<!-- <INPUT TYPE="text" NAME="SelectMonth">    -->
<FORM name="form1" METHOD=POST ACTION="Run_salary_proc.asp">
<FONT SIZE="4" COLOR=""><B>请选择日期</B></FONT> <select Name="selectMonth">
<option value=" "> </option>
<option value="2002/07">2002/07</option>
<option value="2002/08">2002/08</option>
<option value="2002/09">2002/09</option>
<option value="2002/10">2002/10</option>
<option value="2002/11">2002/11</option>
</select>
<INPUT TYPE="submit" Name="OK" value="工资计算">
<INPUT TYPE="hidden" Name="Send" value="1">
<P align=center> </P>
<hr size="1"><br>
</FORM>
<%End Sub %>
<body background="img\BackGround.gif">
<div id="Layer1" style="position:absolute; left:66px; top:49px; width:74px; height:24px; z-index:1">
<div align="center"><font size="7"><b><i><font color="#9900FF" face="Arial, Helvetica, sans-serif" size="5"><img src="img\BackLog.gif" width="73" height="37"></font></i></b></font>
</div>
</div>
<div id="Layer2" style="position:absolute; left:138px; top:48px; width:608px; height:39px; z-index:2">
<div align="center"><font size="7"><b><i><font color="#9900FF" face="Arial, Helvetica, sans-serif" size="5"><font color="#0000CC">Instore
Army System - Consultant Salary Calculate </font></font></i></b></font>
</div>
</div>
<P align=center> </P>
<P align=center> </P>
<hr size="1"><br>
<CENTER><%
Server.ScriptTimeOut=300

Dim S_Month
Dim Rs
S_Month=Request.Form("SelectMonth")
If Request.form("OK")="工资计算" and Request.Form("Send")=1 Then
If Trim(S_month)<>"" Then
%>
<SCRIPT LANGUAGE="JavaScript">
alert("开始运行(<%=S_Month%>)月份工资!");
</SCRIPT>
<% Err.Clear
On Error Resume Next
'开始事务
ConnMain.BeginTrans
ConnMain.Execute("Exec other_store_exponent_proc '"&S_Month&"' ")
ConnMain.Execute("Exec whisper_store_exponent_proc '"&S_Month&"' ")
ConnMain.Execute("Exec VS_store_exponent_proc '"&S_Month&"' ")
ConnMain.Execute("Exec HC_store_exponent_proc '"&S_Month&"'")
ConnMain.Execute("Exec Salary_Temp '"&S_Month&"'")
If Err.Number <> 0 then
' 出错,则回滚
ConnMain.RollbackTrans
Else
' 正常,则提交
ConnMain.CommitTrans
End if

%>
<SCRIPT LANGUAGE="JavaScript">
alert("工资计算成功!");
</SCRIPT>
<%
Else
%>
<SCRIPT LANGUAGE="JavaScript">
alert("选择不能为空!");
</SCRIPT>
<% Call ListForm
Response.End
End If

Call ListForm

Else

Call ListForm

End IF
%>

</CENTER>
mybios 2002-11-13
  • 打赏
  • 举报
回复
有没有可能让asp与sql2000异步执行吖?这样asp发个命令过去便返回行吗?我试过很多方法都不能异步。。。。唉。
_TMG_ 2002-11-13
  • 打赏
  • 举报
回复
考虑数据库设计方面的问题
freezwy 2002-11-13
  • 打赏
  • 举报
回复
呵呵,还是寻找更好的办法吧,时间太长,客户主动关掉操作,对数据库和WEB服务影响太大。
jery_lee 2002-11-13
  • 打赏
  • 举报
回复
WEB上执行存储过程除了网络延时外,没有多大差别。
你可以在IIS上设置脚本执行时间大与 40分钟 应该差不多。
是否你在存储过程中用的不必要的事务太多。导致死锁?
Jeroki 2002-11-13
  • 打赏
  • 举报
回复
cmsoft(韦小宝是我的老乡) :我没有啊?
我估计数据库端的改动不会太大的,因为一直在使用和优化
主要是要考虑在WEB上执行存储过程不出现超时的这个问题
Jeroki 2002-11-13
  • 打赏
  • 举报
回复
我认为是操作数据过多,这些存储过程中包含很多算法,涉及的表、视图很多,复杂的很,可能与数据库结构关系不大!
用事务会好一点吗?
cmsoft 2002-11-13
  • 打赏
  • 举报
回复
这么长时间啊,ft,你用索引了没有?
liuqinyi 2002-11-13
  • 打赏
  • 举报
回复
我说老兄,你怎么做的哪?你的库结构一定有问题,改动你的库结构吧,那样才有可能,或者优化你的存储过程,这样才可以。不过估计优化不了多少了?你说说你的每个表的结构,和你的存储过程。

28,391

社区成员

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

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