我有一个ASP页面,我称之为SQL存储过程。这个SP正在做一些繁重的数据库操作,因此有时需要时间。有时可能需要3分钟以上。它有时很好,但有时ASP会卡住。即页面停止,它什么都不做。它也没有说DB操作成功,也不会抛出错误信息。
为什么会这样?我应该在页面上设置什么属性才能等待数据库响应?
Hello Again,
我有更多关于我面临的问题的信息。在分析了更多之后,我发现问题是另一回事。这是场景:
我有一个ASP页面说Base1.asp,这个页面有一个弹出窗口的链接,当我点击这个链接时,一个新窗口打开,popoup说pop1.asp。此弹出窗口中的“保存”调用存储过程在数据库中执行某些操作。在数据库中执行的操作有点耗时(请注意,此SP已经足够优化)。当我在此弹出窗口中点击“保存”时,将调用SP,执行数据库操作,然后关闭此弹出窗口,并使用javascript中的window.opener.location参数刷新父页面。这个过程大多数时候都很好。
当多个用户说5在同一时间使用此功能时,已发现弹出窗口无法刷新父页面。我看到数据库操作成功,弹出窗口的代码成功执行但弹出窗口无法自行关闭并刷新父页面。弹出窗口停留在屏幕上。我可以使用窗口右上角的X关闭它。
我的问题:
另请注意,目前刷新父级并关闭子级的代码是用javascript函数编写的,该函数在body标记的Onload事件中调用。
任何帮助都将不胜感激。
由于
答案 0 :(得分:0)
如果只是单个页面超时,我会将Server.ScriptTimeout[=NumSeconds]
添加到违规页面的顶部,如下所述: -
答案 1 :(得分:0)
一些问题,首先应该查询需要很长时间吗?通过重新制定它(增加一两个指数),它几乎可以立即发生吗?不是粗鲁,但你说“沉重”是什么意思?如果没有,那么我建议您在查询完成或失败时使用Ajax调用来更新页面。现在这样做并不困难,那里有很多模型。