高手们请进,为什么在执行了一个大的存储过程完成后,会停留很久......

xjpepitceo 2003-10-20 11:28:18

//是一个大的数据分析的存储过程。Delphi 代码
procedure TFAp.btnApClick(Sender: TObject);
begin
if messagedlg('是否要分析数据?',mtconfirmation,[mbyes,mbno],0)=mrno then
abort;
StartTime:=Now();
exespl.commandtext:='Exec Sp_TracesAnalyze :@UserName ,:@begdate ,:@enddate ,'+
' :@dept_no1 ,:@dept_no2 ,:@grp_no1 ,:@grp_no2 ,'+
' :@emp_no1 ,:@emp_no2 ,:Reap ';
exespl.Parameters.ParamByName('@UserName').value:=ttdm.UserID;
   //参数列表... ...
exespl.Parameters.ParamByName('@emp_no2').value:= EmpNo2;
exespl.Execute;//执行存储过程
showMessage('分 析 已 完 成 !, 共耗时 ' + FormatDatetime('hh:nn:ss:zzz', Now - StartTime));
//---存储过程执行成功---
end; //---- 执行成功后,为什么会在这里停止几分钟到十几分钟 ----
end;
// 后面没有执行代码。为什么执行后程序会停止,不是死了。过了几分钟到十几分钟后又能运行。但在执行大量数据时才会,少量时不会出现。后台执行存储过程也要前台资源吗?
...全文
81 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdhdy 2003-10-20
  • 打赏
  • 举报
回复
应该就是系统的问题了!
xjpepitceo 2003-10-20
  • 打赏
  • 举报
回复
如果,我说如果没有代码呢?这有解释吗?
yujohny 2003-10-20
  • 打赏
  • 举报
回复
不是影响,你最好单步跟踪一下代码,看看存储过程执行后到底代码跳到哪里去
xjpepitceo 2003-10-20
  • 打赏
  • 举报
回复
触发器也会影响到前台程序吗?
yujohny 2003-10-20
  • 打赏
  • 举报
回复
我用Delphi这么久,再长的存储过程也用过了,我还没发现有这方面缺陷。
我想你还是查查是不是有触发器再执行???
sdhdy 2003-10-20
  • 打赏
  • 举报
回复
在VB里不会这样,我估计这可能是Delphi语言与SQL SERVER接口系统方面处理的缺陷

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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