起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 207|回复: 7

执行存储过程报超时错误**

[复制链接]
发表于 2009-3-24 14:24:46 | 显示全部楼层 |阅读模式
在功能里面执行一个存储过程,报了如下错误

1.jpg

7.11 KB, 下载次数: 130

回复

使用道具 举报

发表于 2009-3-24 14:50:11 | 显示全部楼层
用错误信息“operation*timed”在bbs上搜索一下,修改一下 配置文件,然后运行看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 14:51:29 | 显示全部楼层
在服务端的BIN目录里面改过了,但是问题还在
回复 支持 反对

使用道具 举报

发表于 2009-3-24 15:09:04 | 显示全部楼层
你这存储过程大概是什么样的?是否涉及到了大数据量?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 15:18:25 | 显示全部楼层
不算大数据量,运行不到一分钟就报错了
回复 支持 反对

使用道具 举报

发表于 2009-3-24 15:35:43 | 显示全部楼层
这个存储过程在数据库中可以执行成功吗?执行时间大概是多长?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 16:06:24 | 显示全部楼层
成功啊,在本机平台上面运行不到1分钟就出来了,但是到正式环境,就报超时了
回复 支持 反对

使用道具 举报

发表于 2009-3-24 16:14:38 | 显示全部楼层
楼主,这个好像只能代码处理一下这个错误提示了
大概的过程类似于这样子:
1、
function CheckSuccess: Boolean;
begin
  select xxx 某个状态 // 要求在存储过程最后去执行一下,用来检查是否成功
end;

2、
procedure TMainForm.Button1Click(Sender: TObject);
var
  lTime: TDataSetTime;
  Success: Boolean;
begin
  Sucuss := False;
  lTime := SysUtils.Now;
  try
    DataSetCCGCSJJ1.Active:=true;
    Success := True;
  except
    on E: Exception do
    begin
      while not Success do
      begin
        if E.Message = 'Time xxx' then
        begin
           Sleep(10000);
           Success := CheckSuccess;
        end
        else
          raise;
      end;
    end
    else
      raise;
  end;
end;
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-23 20:37 , Processed in 0.062992 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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