D7 数据模块创建是就连接到服务器数据库,每次循环都读取一次数据库中的视图来取数据,一共循环读取14次,现在发现从1读到13次正常,读14次的时候ADOConnection1连接正常,可是adoquery的open报错“连接失败”,如果只读第13次和14次,那么13次正常,14次有open失败了。搞的头都大了,请对家帮忙看看。function TDataModule1.ReadJYJData(jyjID:string;var Dabz,Daph:string): string;
begin
try
ADOQuery1.Close;
ADOQuery1.SQL.Text:='select deviceid,teamname,brandname,updatetime from view_tiaoping where deviceid='''+jyjID+''' order by updatetime desc'; ADOQuery1.Open; if ADOQuery1.RecordCount>0 then
begin
if (not ADOQuery1.FieldByName('TeamName').IsNull) and (ADOQuery1.FieldByName('TeamName').AsString <>'') then
Dabz:=FGTeamStr(ADOQuery1.FieldValues['TeamName'])
else
Dabz:='----';
if (not ADOQuery1.FieldByName('BrandName').IsNull) and (ADOQuery1.FieldByName('BrandName').AsString <>'') then
Daph:='牌号:'+ADOQuery1.FieldValues['BrandName']
else
Daph:='牌号:----';
end;
except
on E:Exception do
Result:=E.Message;
end;
end;
begin
try
ADOQuery1.Close;
ADOQuery1.SQL.Text:='select deviceid,teamname,brandname,updatetime from view_tiaoping where deviceid='''+jyjID+''' order by updatetime desc'; ADOQuery1.Open; if ADOQuery1.RecordCount>0 then
begin
if (not ADOQuery1.FieldByName('TeamName').IsNull) and (ADOQuery1.FieldByName('TeamName').AsString <>'') then
Dabz:=FGTeamStr(ADOQuery1.FieldValues['TeamName'])
else
Dabz:='----';
if (not ADOQuery1.FieldByName('BrandName').IsNull) and (ADOQuery1.FieldByName('BrandName').AsString <>'') then
Daph:='牌号:'+ADOQuery1.FieldValues['BrandName']
else
Daph:='牌号:----';
end;
except
on E:Exception do
Result:=E.Message;
end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货