关于数据查询连接数问题

bookshop 2007-08-16 05:36:05
我的查询代码如下,客户端安装了Oracle 9客户端组件,并用netassist连通
请问我的数据连接都是及时关闭,为什么连接数还会超过现在设置的200呢?

//生成B类报文:返回查询结果
function TFormMain.doQryDataFromDB(sQry:string):string;
var
sReturn,sConnInfo:string;
i,j:integer;
curDataBase: TDataBase;
curQuery: TQuery;
AList:TStringList;
begin
if sQry='' then
sReturn :=oCommPacket_Head+ErrPacket_Head+'0'+
oCommPacket_DataBEG+'输入条件不正确,请重新输入!'+
oCommPacket_DataEnd+oCommPacket_Foot
else
begin
try
CoInitialize(nil);
//动态创建数据库连接及查询对象
AList:=TStringList.Create;
AList.LoadFromFile('DBConn.txt');

curDataBase :=TDataBase.Create(Nil);
curDataBase.DriverName :=copy(AList.Strings[0],pos('=',AList.Strings[0])+1,length(AList.Strings[0]));
curDataBase.DataBaseName :=copy(AList.Strings[1],pos('=',AList.Strings[1])+1,length(AList.Strings[1]));
curDataBase.LoginPrompt :=False;
i :=0;
while i<AList.Count-2 do
begin
curDataBase.Params.Add(AList.Strings[i+2]);
i :=i+1;
end;

curQuery :=TQuery.Create(Nil);
curQuery.DatabaseName :=copy(AList.Strings[1],pos('=',AList.Strings[1])+1,length(AList.Strings[1]));

curDataBase.Open;
if (curDataBase.Connected)then
begin
with curQuery do
begin
try
Active :=false;
SQL.Clear;
SQL.Add(sQry);
Active :=true;
// ExecSQL;
oCommPacket_Type :='BTYP';
sReturn :=oCommPacket_Head+oCommPacket_Type+inttostr(RecordCount);
if RecordCount >0 then
begin
First;
i :=0;
while i<=RecordCount-1 do
begin
sReturn :=sReturn +oCommPacket_DataBEG;
j :=0;
while j<=FieldCount-1 do
begin
sReturn :=sReturn+trim(Fields[j].AsString)+'|';
j :=j+1;
end;
sReturn :=sReturn+oCommPacket_DataEnd;
i :=i+1;
Next;
end;
end
else
sReturn :=sReturn+oCommPacket_DataBEG+'没有符合条件的记录!'+oCommPacket_DataEnd;
finally
sReturn :=sReturn+oCommPacket_Foot;
Close;
end;
end;
end;
finally
curDataBase.Close;
FreeAndNil(curDataBase);
FreeAndNil(curQuery);
FreeAndNil(AList);
CoUninitialize;
end;
end;
Result :=sReturn;
end;
...全文
172 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
hsnd 2008-06-30
  • 打赏
  • 举报
回复
连接进程数控制
diulei 2008-06-28
  • 打赏
  • 举报
回复
查看连接的进程地址,用户,然后才能确定问题出在哪里
guoxyj 2008-06-14
  • 打赏
  • 举报
回复
up

17,380

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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