function  TFrmChoose.Gen_Frequence2(mindate:string;maxdate:string;Candidate2:TA2Str;num_C2:integer; minsup:real;tiao:integer):boolean;
var  glagGen:boolean;
  mstrSQL:string;
  jilu:TAInt;  //储存频数  array of integer
  //k:integer;
  t:integer;
  k:integer;
  q:integer;
  large2:TA2str;  //array of array of string类型
  mstr1:string;
  mstr2:string;
  mstr3:string;
  da:string;
  das:string;
begin
     ADOQuery2.Connection:=DMDAL.ADOCn;
     da:=mindate ;
     das:=maxdate;
     setlength(jilu,num_C2);
     glagGen:=true;
             mstr3:='1';
             t:=0;
             for k:=0 to num_C2-1 do
             begin
                 //ADOQuery2.Connection:=DMDAL.ADOCn;
                 mstr1:=Candidate2[k][0];   
                mstr2:=Candidate2[k][1];                 mstrSQL:='select count(*) as cou '+
                          'from Deal '  +
                          'where '+ mstr1+'='+quotedstr(mstr3)+
                          ' and '+ mstr2+'='+quotedstr(mstr3)+
                          ' and '+
                          'dealdate>='+quotedstr(Da)+
                          ' and '+
                          ' dealdate<='+quotedstr(das);                 with  ADOQuery2 do
                 begin
                     close;
                     sql.Clear;
                     sql.Text:=mstrSQL;
                     Open;
                     if Fields[0].AsInteger<>0 then
                     begin
                         jilu[k]:=Fields[0].AsInteger;
                         t:=t+1;
                     end
                     else
                        begin
                         jilu[k]:=0;
                        end
                 end;
             end;               
系统运行到红色部分就报错说Read of Addrres
说明:Candidate2和num_C2都是全局变量,在调用这函数之前已经得到值了